• Redis基础


    一、Redis简介


    Redis,一种键值对类型的NoSQL数据库。使用起来,貌似非常简单,操作的对象只是key-value,完全没有库、表、字段的概念。当然,key可以分层次,层次之间用:分隔,如gramfather:father:key,这有点类似c#里面的命名空间.父类.子类,但这跟库表不是同一种概念。


    对名为name的key进行赋值


    127.0.0.1:6379> set name "leftfist" 
    OK 


    读取名为name的key的值


    127.0.0.1:6379> get name 
    "leftfist" 


    就是这么简单。


    value的类型,支持字符、列表(list)、集合、有序集合、哈希表。


    优点:快、支持的数据类型丰富、操作简单


    缺点:单线程架构,容易有CPU瓶颈,数据都在内存中,以T为单位不现实


    在实际应用中,Redis常用作缓存,可以替代memcached,但性能比后者更好,且可以持久化。


    二、 特性一览


    所有数据都在内存中。


    五种数据结构:String / Hash / List / Set / Ordered Set。


    数据过期时间支持。


    不完全的事务支持。


    服务端脚本:使用Lua Script编写,类似存储过程的作用。


    PubSub:捞过界的消息一对多发布订阅功能,起码Redis-Sentinel使用了它。


    持久化:支持定期导出内存的Snapshot 与 记录写操作日志的Append Only File两种模式。


    Replication:Master-Slave模式,Master可连接多个只读Slave,暂无专门的Geographic Replication支持。 





    三、安装


    Redis并不直接支持Windows,但有一个名为微软开放技术团队的组织在开发和维护一个针对64位windows的变种。听起来感觉怎么这么不靠谱,二手的Redis。所以,要使用Redis,还是抛弃windows,老老实实使用Linux。


    Linux  uBuntu下安装Redis:


    1、在终端,输入


    sudo apt-get update
    sudo apt-get install redis-server


    输入超级管理员口令后,一般即可安装成功。


    注意,运行上述命令,请保证网络是通畅的。如果网络环境需要设置代理,尤要注意。

    有关代理上网设置,可见拙作:

    http://blog.csdn.net/leftfist/article/details/39677133


    apt-get是一条linux命令,适用于deb包管理式的操作系统,主要用于自动从互联网的软件仓库中搜索、安装、升级、卸载软件或操作系统。相当于node.js的npm,vs.net里的nuget。


    2、检测redis是否运行


    安装后,Redis即自动运行。
    在终端,输入
    ps -aux|grep redis


    其中,ps命令用于列出系统当前运行的进程;grep用于过滤


    正常情况下,应该显示类似信息:
    redis      942  0.0  0.4  27908  7264 ?        Ssl  14:48   0:10 /usr/bin/redis-server *:6379               
    leftfist 19055  0.0  0.0   4832   920 pts/8    S+   18:01   0:00 grep --color=auto redis


    3、打开redis客户端


    在终端,输入
    redis-cli




    4、显示redis的详细信息,如版本等


    在redis客户端,输入
    info

    如果仅仅想看Redis的版本号,可以在终端下直接输入
    redis-cli –version 或 redis-cli –v
    redis-server –version 或 redis-server -v


    5、罗列key


    在redis客户端,输入
    keys *


    四、配置Redis


    修改/etc/redis/redis.conf。
    可以在终端下,输入
    sudo vi /etc/redis/redis.conf
    如何修改,这是另外一个课题。

  • 相关阅读:
    在github上面查到了,为什么需要这个padding
    Java 8 新语法习惯,新的函数特性和语法
    数据库连接池配置,获取连接的超时
    用函数式的方式思考,通常以命令式的方式
    centos7 yum方式安装,centos自带mariadb
    mac屏幕脏了怎么办?避免使用粗糙的布
    用 Arthas “庖丁解牛,强大的 Arthas法师来 carry
    图解Knative核心组件,Serving自动伸缩
    vim配置文件
    20200717模拟赛3题解
  • 原文地址:https://www.cnblogs.com/leftfist/p/4257867.html
Copyright © 2020-2023  润新知