开发者社区> 陈天刚> 正文
阿里云
为了无法计算的价值
打开APP
阿里云APP内打开

Redis安装与配置

简介: 分布式缓存之Redis Redis简介 redis是一个开源的、使用C语言编写的、支持网络交互的、可基于内存也可持久化的Key-Value数据库。 redis的官网地址,非常好记,是redis.io。
+关注继续查看

分布式缓存之Redis

Redis简介

redis是一个开源的、使用C语言编写的、支持网络交互的、可基于内存也可持久化的Key-Value数据库。
redis的官网地址,非常好记,是redis.io。(特意查了一下,域名后缀io属于国家域名,是british Indian Ocean territory,即英属印度洋领地)目前,Vmware在资助着redis项目的开发和维护。

源码部署

[root@host ~]# cd /usr/local/src
[root@host src]# wget http://download.redis.io/releases/redis-3.2.2.tar.gz 
[root@host src]# tar zxf redis-3.2.2.tar.gz
[root@host src]# cd redis-3.2.2/
[root@host src]# tar zxf redis-3.2.2.tar.gz 
[root@host src]# cd redis-3.2.2
[root@host redis-3.2.2]# make PREFIX=/usr/local/redis install
[root@host redis-3.2.2]# cp utils/redis_init_script /etc/init.d/redis_6379 
[root@host redis-3.2.2]# chmod +x /etc/init.d/redis_6379
[root@host redis-3.2.2]# mkdir /etc/redis
[root@host redis-3.2.2]# cp redis.conf /etc/redis/6379.conf
[root@host redis-3.2.2]# /etc/init.d/redis-server start

redis配置详解

daemonize no默认情况下redis 不是以守护进程的模式运行。

pidfile /var/run/redis.pid在守护进程模式下,pid进程号文件路径的存储位置

port 6379监听的端口号,设置为0的话,redis不会对tcp 连接进行监听;

bind 127.0.0.1绑定本机单一网卡适配器,默认是本机的所有网络适配器

unixsocket /tmp/redis.sock
unixsocketperm 755默认情况下 redis 是不建立unix socket连接的;

timeout 0客户端空闲n秒后断开连接; 0 表示不主动断开连接;


tcp-keepalive 0

在linux上,每个一段时间发送 SO_KEEPALIVE ACK的空包;推荐值为60s;
这样做的两点理由:
1、阻止由于某个command执行过长达到timeout超时时间而被断开连接;
2、提高连接错误的检测
(对于长期空闲的tcp连接很容易被NAT、防火墙等直接close掉。这情况下对于client和server在没IO操作下,都是没办感知的。另外,像Server程序或网络(硬件)突然Crash掉,也是同样的情况。)
 使用keepalive,内核会定时帮你发送一个空的ACK包,如果连接已断开或网络不可达,就会收到RST。

loglevel notice记录日志的级别

  • debug:包含所有信息,主要用于开发环境中;
    -  verbose:相比debug 只显示有用信息;
    -  notice: 生产环境推荐配置
    -  warning: 只记录重要、错误信息和严重信息;

logfile stdout日志文件记录位置, 如果采用daemonize 守护进程的模式,且参数值为stdout,那logs会被重定向到/dev/null

syslog-enabled no将日志信息记录到 syslog 文件中。默认不允许;

syslog-facility local0  (必须是 LOCAL 0 -- LOCAL 7)作为syslog 的日志设备

databases 16数据库的数量, select dbid ; dbid  取值范围between 0 and 'databases'-1

RDB快照部分:

将内存中的数据刷写到磁盘上
save <seconds>  <changes> save 900 1 save 300 10 save 60 10000

符合以上条件的就刷新磁盘上:
900秒(15分钟)之后,且至少1次变更
300秒(5分钟)之后,且至少10次变更
60秒之后,且至少10000次变更
(我一直怀疑数据会丢失多少?丢失几秒的?)
不刷写到磁盘上的话,直接 save "" 就可以。

stop-writes-on-bgsave-error yes默认情况下,如果在RDB snapshots持久化过程中出现问题,设置该参数后,Redis是不允许用户进行任何更新操作(set...)。避免人为强制停止redis 快照,如果采用良好的监控系统,那么可以将该参数设置为 no
可能出现的错误信息:

MISCONF Redis is configured to save RDB snapshots, but is currently not able to persist on disk. Commands that may modify the data set are disabled. Please check Redis logs for details about the error.

rdbcompression yes  在导出.RDB数据库文件的时候采用LZF压缩字符串和对象。想节省一些CPU资源可以设置为no,但数据量可能会很大。

rdbchecksum yesRDB快照制作过程中会在文件的末尾写入 crc64的校验值。这样可能很好的保证数据的正确性。代价是在 saving 或者 loading RDB file 的时候,性能下降10%(待测试);如果仅用该选项的话,文件末尾的校验值会用0代替,这样在loading data 的时候,会跳过check。

dbfilename dump.rdb快照文件名
dir ./DB工作目录,必须是目录名,dumpfile存储的位置。

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
领课教育开源系统-Redis的安装和使用
Redis是一个开源的使用ANSI C语言编写、支持网络、可基于内存亦可持久化的日志型、Key-Value数据库,并提供多种语言的API。
191 0
安装和使用Redis
Redis是一个高性能的内存数据库,它体积轻巧性能又高,在企业中被广泛使用。 安装Redis Windows安装 Redis是为Linux系统设计的,但是也有团队为Windows做了移植。
1035 0
使用Redis搭建持久化K-V存储
最近在项目中需要在多机之间共享一些集合,Hash等有类型的数据结构,如果基于Mysql来存储的话需要预先定义一系列表结构并维护表结构和数据结构的一致性,后续还需要根据时间对数据库做旧数据清理工作,所以开始调研一些能满足下列需求的存储引擎。 具有高可用,持久化的特性。 数据可以设置失效时间,方便自动数据清理。 支持常用数据结构,如集合,有序集合,Hash map,列表等。 支持事务操作,
4548 0
Redis持久化方案
  前言:Redis的高性能是由于其将所有数据都存储在了内存中,为了使Redis在重启之后仍能保证数据不丢失,需要将数据从内存中同步到硬盘中,这一过程就是持久化。       Redis支持两种方式的持久化,一种是RDB方式,一种是AOF方式。可以单独使用其中一种或将二者结合使用。 RDB持
3925 0
redis之(十二)redis数据的持久化
[一]redis的数据为什么要持久化 --->redis的存取数据性能高,是由于将所有数据都存储在内存中。当redis重启的时候,存储在内存中的数据就容易丢失。 --->把redis作为数据库使用。
1093 0
07_NoSQL数据库之Redis数据库:Redis的高级应用之事务处理、持久化操作、pub_sub、虚拟内存
 事务处理 Redis对事务的支持目前还比较简单。Redis只能保证一个client发起的事务中的命令可以连续的执行,而中间不会插入其他client的命令。当一个client在一个连接中发出multi命令时,这个连接会进入一个事务上下文,该连接后续的命令不会立即执行,而是先放到一个队列中,当执行exec命令时,redis会顺序的执行队列中的所有命令。
1202 0
+关注
陈天刚
数据库相关技术专家
78
文章
0
问答
文章排行榜
最热
最新
相关电子书
更多
低代码开发师(初级)实战教程
立即下载
阿里巴巴DevOps 最佳实践手册
立即下载
冬季实战营第三期:MySQL数据库进阶实战
立即下载