Centos7下的Redis安装和配置文件部分参数解析

Centos7下的Redis安装和配置文件部分参数解析

知识点总结

  1. redis6.0之前只支持单线程。
  2. redis数据存储于内存中,使用单线程操作redis的效率为最高的。多线程cpu进行上下文切换耗时。
  3. 对于内存系统来说,没有上下文切换效率是最高的。多次读写都在一CPU上的,在内存情况下,是最佳的方案。
  4. 可用来作数据库,缓存,消息队列中间件(MQ),
  5. Redis事务没有隔离级别的概念。
  6. Redis单条命令保存原子性,但是事务不保证原子性
  7. Redis的事务:开启事务multi 命令入队 执行事务 放弃事务后当前队列命令取消执行。
  8. 所有的命令在事务中,并没有直接被执行!只有发起执行命令的时候才会执行!Exec
  9. 事务异常(代码有问题!命令有错),事务中所有命令都不会执行
    运行时异常(1/0) 如果事务队列中存在合理语法性,那么执行命令的时候,其他命令是可以正常执行的,错误命令抛出异常
  10. 锁:乐观锁 分布式锁

1. Redis安装

看狂神大佬redis视频小记

  1. centos下载redis包
  2. 确保安装c++环境,解压redis包,并进行编译和安装。默认安装地址为usr/local/bin;redis6.0版本以上需要c++9.0版本进行编译安装
  3. 复制redis解压目录下的配置文件到/usr/local/bin目录中,可新建文件夹configf存放
  4. 设置redis后台启动,修改配置文件参数daemonize=yes
  5. 在安装目录下执行命令 redis-server configf/redis.conf(可复制多份文件进行伪集群)
  6. 连接redis服务器命令:当前目录下 redis-cli -h 主机(本地可省略) -p6379
  7. 查看服务是否启动 ps -ef|grep redis
  8. shutdown 关闭redis exit退出redis
  9. 测试并发 redis-benchmark -h localhost -p 6379 -c 并发数SBC -n请求数QPS

2.配置文件内容

2.1 网络配置参数

  1. bing 127.0.0.1 #绑定的ip 改为0.0.0.0可被远程访问
  2. protected -mode yes #保护模式
  3. port 6379 #端口设置

2.2通用设置

  1. dazemonize yes #守护进程模式运行(即后台运行,需要指定pidfile文件名)默认为no
  2. pidfile /var/run/redis_6379.pid #如果以后台的方式运行,需指定pid文件
  3. loglevel #日志级别debug,verbose,notice,warning
  4. logfile “” #日志的文件位置
  5. databases 16 #数据库数量 默认16
  6. always-show-logo yes #是否总是显示logo

2.3快照RDB和AOF持久化

  1. redis是内存数据库,没有持久化,数据断电就会失效不进行保存到数据库中。

  2. rdb持久化,在规定的时间内,执行多少次操作,则会持久化到数据库。
    **优点:**1.适合大规模的数据恢复 2.对数据的完整性不高
    **缺点:**1.需要一定的时间间隔进行操作。某段时间内宕机,则该时间段内的数据丢失2.fork进程的时候,会占用一定的内容空间

  3. aof持久化,以独立日志的方式记录每次写命令,重启时再重新执行AOF文件更新到数据库。
    **优点:**每一次修改都同步,文件的完整性。2.每秒同步一次,可能只丢失一秒的数据 3.从不同步,效率最高
    **缺点:**1.相对于数据文件来说,aof远远大于rdb,修复速度慢于rdb
    2.Aof运行效率低于rdb,所以默认为rdb持久化

RDB持久化参数
  1. 默认有三个策略,可添加
    save 900 1 #900秒内 至少有1个key被修改,则进行持久化操作
    save 300 10 #300秒内 至少有10个key被修改,则进行持久化操作
    save 60 10000 #60秒内 至少有10000个key被修改,则进行持久化操作
  2. stop-writes-on-bgsave-error yes #持久化失败是否继续工作
  3. rdbcompression yes #是否压缩rdb文件,需要消耗CPU资源
  4. rdbchecksum yes #保存rdb文件的时候,进行错误的检查校验
  5. dir ./ #rdb文件的保存目录
APPEND ONLY模式 持久化参数
  1. appendonly no #默认不开启aof模式,因为通常情况下rdb足够使用

  2. appendfilename “appendonly.aof” #持久化文件

  3. 保存策略
    #appendfsync always #每次修改都会sync,消耗性能
    appendfsync everysec #每秒修改都会sync,可能丢失这1s的数据

    #appendfsync no #不执行sync,操作系统自己同步数据,速度最快

    RDB优点:1.适合大规模的数据恢复 2.对数据的完整性不高
    缺点:1.需要一定的时间间隔进行操作。某段时间内宕机,则该时间段内的数据丢失
    2.fork进程的时候,会占用一定的内容空间
    AOF优点:1.每一次修改都同步,文件的完整性。2.每秒同步一次,可能只丢失一秒的数据 3.从不同步,效率最高
    缺点:1.相对于数据文件来说,aof远远大于rdb,修复速度慢于rdb
    2.Aof运行效率低于rdb,所以默认为rdb持久化

主从复制,可通过复制多份配置文件进行仿集群

  1. 配置文件要求端口号,pid文件名,log名,dump.rdb文件名避免相同

  2. slave of 主服务器地址 端口号 #配置以哪台服务器为主人

  3. slave no one #取消自身从服务器命令

  4. info replaction #查看当前主从状态命令

哨兵模式

  1. sentinel.conf配置哨兵配置文件,可放在和redis配置文件同目录

    #port 默认26379 添加哨兵端口,进行哨兵集群

    #sentinel monitor name(命名随意)host port 1(1启动slave进行下一个主机投票模式)
    sentinel monitor myredis 127.0.0.1 6379 1
    #sentinel auth-pass myredis password(如果有密码需要配置)

  2. 主机宕机后,会重新在从机中选出主服务器,并且原主机在重新连接后,不会获取主机的权限,而是变成了从服务器

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值