Redis 介绍及安装配置

简介

Redis 是完全开源免费的,遵守BSD协议,是一个高性能的key-value数据库。

Redis 与其他 key - value 缓存产品比较有以下三个特点:

  Redis支持数据的持久化,可以将内存中的数据保存在磁盘中,重启的时候可以再次加载进行使用。memcache 不支持。

  Redis不仅仅支持简单的key-value类型的数据,同时还提供list,set,zset,hash等数据结构的存储。

  Redis支持数据的备份,即master-slave模式的数据备份,memcache 不支持。

应用场景

 

消息模式

队列模式         #所有生产者把生产的消息放入同一个列表,等着消费者去消费

  所有应用按顺序插入值到list1 中,消费者通过rpop/lpop 命令,按顺序执行删除命令,此命令会返回被删除的值,此过程可以理解为消息的消费。


订阅发布模式       #一个频道,客户端订阅频道。发送者发送关消息,订阅者接收消息。场景:微博关注
  SUBSCRIBE mq1 #消费者先订阅,订阅频道可以事先不存在
  PUBLISH mq1 "hello man" #生产者往频道推送消息

Redis 特性

1.性能极高 – Redis能读的速度是110000次/s,写的速度是81000次/s 。

2.丰富的数据类型 – Redis支持二进制案例的 Strings, Lists, Hashes, Sets 及 Ordered Sets 数据类型操作。

3.原子 – Redis的所有操作都是原子性的,意思就是要么成功执行要么失败完全不执行。单个操作是原子性的。多个操作也支持事务,即原子性,通过MULTI和EXEC指令包起来。

4.丰富的特性 – Redis还支持 publish/subscribe, 通知, key 过期等等特性。

Linux 下安装

下载地址:http://redis.io/download,下载最新稳定版本。

本教程使用的最新文档版本为 2.8.17,下载并安装:

$ wget http://download.redis.io/releases/redis-2.8.17.tar.gz
$ tar xzf redis-2.8.17.tar.gz
$ cd redis-2.8.17
$ make

make完后 redis-2.8.17目录下会出现编译后的redis服务程序redis-server,还有用于测试的客户端程序redis-cli,两个程序位于安装目录 src 目录下:

下面启动redis服务.注意这种方式启动redis 使用的是默认配置。

$ cd src
$ ./redis-server

也可以通过启动参数告诉redis使用指定配置文件使用下面命令启动。

$ cd src
$ ./redis-server ../redis.conf

redis.conf 是一个默认的配置文件。我们可以根据需要使用自己的配置文件。

启动redis服务进程后,就可以使用测试客户端程序redis-cli和redis服务交互了。 比如:

$ cd src
$ ./redis-cli
redis> set foo bar
OK
redis> get foo
"bar"

redis 配置

1、daemonize介绍

  yes  以守护进程方式在后台启动

  no  启动后占用当前终端

2、设置密码

  requirepass   test123

  重启服务生效

4、开启远程访问

  bind 127.0.0.1      #更改为0.0.0.0

  protected-mode no    注:在redis3.2之后,redis增加了protected-mode,在这个模式下,即使注释掉了bind 127.0.0.1,再访问redisd时候还是报错,所以需要配置为这样。

5、关于持久化详见该文章

同一台服务器配置多个实例时配置

  1.更改端口,防止冲突
  2.更改 pidfile
  3.更改 logfile

命令

redis-server   redis.conf                #指定文件来启动,不指定会加载默认配置启动

redis-cli -h 1.1.1.1 -p 6380           #端口不是默认的,连接时需指定,不指定IP默认访问 127.0.0.1

登陆后操作:
auth passwd                  #如果设置了require pass 需要登陆后认证否则无法操作
SHUTDOWN                    #关闭数据库,比kill 更好的关闭命令
config get *                  #获取当前所有配置信息
config set loglevel "notice"        #设置日志级别,只在当前生效,重启后失效
type name                    #查看字段类型
info
cliet list
monitor                     #监控redis 上面执行操作,当前终端显示其他客户端对redis的操作
save                       #
无持久化策略时执行此命令会自动生成dump.rdb ,只要有此文件在redis 目录中,启动redis 后会自动加载该文件把数据#加载到内存当中去。

 


 

posted @ 2019-01-24 15:00  fanggege  阅读(180)  评论(0编辑  收藏  举报