Redis 相关知识

Redis的事物

multi命令:开启事物命令,开启后将任务放在队列中

exec:执行命令

discard:回滚

Redis的原子性

事物中执行的命令执行失败,不具备原子性

事物在执行的命令如果有误(语法错误),具备原子性

watch和unwatch关键字用法

当watch了num1就监视了num1的值,在执行事物的命令时,执行前,num1的值发生了改变,则事物取消

保证在事物操作一个key时,key不能被其他事物或客户端修改

watch是基于CAS算法完成的

CAS算法

比较并交换,是一种无锁算法,实现多个线程在操作同一个资源时保持同步性

实现过程:有几个记录值,分别是旧值、新值和更新值,当要开始操作资源时,先在线程的缓存中记录一个旧值,开始对值进行修改记录到更新值中

在java中可以使用atomicInteger来实现CAS算法

Redis的新特性5.0

Redis的stream数据类型,能满足消息队列的全部需求

xread 只读,不消费

RDB备份的工作方式

1.Redis备份时,调用forks启动一个子进程,redis同时拥有父进程和子进程,父进程负责redis的读写工作,子进程负责rdb备份

2.子进程有一个虚拟的内存和父进程共用的实际的虚拟物理内存,在开始备份的这点,子进程虚拟内存的数据就确定了,但父类进程仍然可以进行读写工作,这时候的读写工作不会被备份

AOF方式

备份的不是数据的二进制内容,备份的是每条修改的命令

AOF的缺点

1.AOF文件比RDB文件要大,通常采用文件名滚动的方式来存储,在恢复时比RDB麻烦,

AOF和RDB 的区别

1.AOF的同步性好,可以做到每秒、实施的备份,而RDB是时间极更新数量的触发,同步性差

2.AOF速度比RDB慢,但是AOF存储的数据比较完整

redis读写分离主从复制

作用:

  1. 读写分离主从复制:解决服务器的压力
  2. 容灾备份

如何配置主机和从机,:

  1. 通过命令的方式,在redis中使用slaveof命令指定 主机是哪台机器
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值