91视频亚洲_国产在线看一区_九一视频污_91热精品视频_在线观看麻豆_亚洲精品视频在线免费

Redis高可用高性能缓存的应用系列2 - 事务机制和IO多路复用、持久化

来源:腾讯云 发布:2023-04-10 20:40:17

概述

Redis高可用高性能缓存的应用系列的第二篇,主要介绍Redis事务机制和IO多路复用、和持久化的知识点。


(相关资料图)

Redis事务机制

Redis事务机制,和Mysql有大的不同,分为4步进行执行:

1.事务提交前,先检查命令语法是否正确2.提交命令后,一定会被执行3.有命令报错也会执行完4.不能回滚

Redis事务和批量操作的区别:Redis在执行exec时,命令要么执行,要么都不执行,批量操作不会检查语法。

Redis事务命令说明:

multi:告诉Redis开启一个事务(注意只是开启,而不是执行)exec: 告诉Redis开始执行事务discard:告诉Redis取消事务watch:监视某一个键值对,它的作用是在事务执行之前,如果监视的键值被修改,事务会被取消

当执行multi命令后,表明Redis开启一个事务,在执行后续的命令都属于在排队中,执行exec命令时,Redis事务的命令要么全部执行,要么全不执行。

redis-cli> set name "stark"OKredis-cli> multiOKredis-cli> set name "stark张宇"QUEUEDredis-cli> set age 33QUEUEDredis-cli> exec1) OK2) OK

如果因为执行的命令语法错误,整个Redis的事务会被服务驳回,全部不执行。

redis-cli> multiOKredis-cli> set name "stark张宇"QUEUEDredis-cli> lpop "changchang" "quanquan" "xiaoshenyang"QUEUEDredis-cli> exec(error) wrong number of arguments (given 3, expected 1)

如果语法没有错误,在执行过程中数据有错误抛出,Redis也会全部执行,只要语法正确,命令都会被执行。

redis-cli> multiOKredis-cli> set name "stark张宇"QUEUEDredis-cli> lpop nameQUEUEDredis-cli> exec1) OK2) WRONGTYPE Operation against a key holding the wrong kind of value

I/O多路复用

首先要说明一点,redis采用单线程处理请求, 假设服务器是4核的CPU,只会占用一个,其他3个都不进行参与,在线程处理上是并行的。

Redis 6.0版本后对这里进行了优化,使用了I/O thread概念,Redis 6.0的主进程只做计算,不在参与读写操作,I/O thread 处理上都是并行的关系,充分利用了多核CPU的优势,节省了处理时间,提升了处理请求的性能。

持久化

Redis的数据是保存在内存中的,所以当服务器重启时会造成数据丢失,Redis提供了数据持久化方案,把数据保存到磁盘上,使用文件恢复数据,主要有3种持久化方式:

rdb : 生成某一时刻的快照,然后保存在二进制文件中aof :记录每一条命令,追加到文件中,打开可以看到具体的操作记录混合模式:它是上面两种方式的结合手动触发save ,会让Redis处于阻塞状态,直到rdb持久化完成,线上环境要谨慎使用bgsave ,它会fork出一个子进程,用来执行持久化,主进程继续响应客户端请求,它会有短暂的阻塞

2.自动触发

在m秒内,执行命令最终执行的是bgsave

bgsave的执行过程:1)首先,redis主进程fork出子进程,2)子进程会共享子进程的数据,并把主进程设置成read only,然后开始执行持久化的操作,当有新命令要修改数据时,Redis采用写实复制的方法来解决数据不一致的问题。

rdb持久化的优缺点:

优点:

容灾性好,方便备份性能最大化,fork出一个子进程来操作,对主进程没有影响数据比较多时,相对于aof启动效率比较高

缺点:

假如中间发生故障,故障期间会造成数据丢失

Aof同步策略

appendfsync everysec 每秒同步一次,默认是每秒同步一次appendfsync always 每次操作后要同步一次appendfsync no 由操作系统进行调度

Aof的重写策略:因为在Redis操作的过程中有很多命令都是对同一个key进行操作,会造成大量的命令重复,造成Aof文件过大,而整理出的解决方案。

手动触发,执行bgrewriteaof命令自动触发

auto-aof-rewrit-precentage:当前Aof文件大小和最后一次重写后的大小之间的比率等于或者是等于指定的增长百分比,如100是代表当前Aof文件是上次重写的两倍时候才重写的。

auto-aof-rewrit-mini-size:当Aof文件大小大于该值时候才可能重写。

优点:数据安全,不会造成数据的丢失

缺点:比rdb重启效率低,运行效率比rdb低

关键词:
相关新闻
主站蜘蛛池模板: 天天摸天天操天天爽 | 在线观看免费黄色小视频 | 国产精品美女在线观看 | 国产女人成人精品视频 | 欧美在线黄 | 成人午夜福利院在线观看 | 伊人久久综合谁合综合久久 | 自拍偷自拍亚洲精品被多人伦好爽 | 亚洲性天堂 | 亚洲第一色图 | 一色屋精品视频在线观看 | 欧美性猛交xxxx乱大交蜜桃 | 曰韩无码av一区二区免费 | 夜夜高潮夜夜爽夜夜爱 | 亚洲涩色| 国产精品极品美女自在线观看免费 | 一级毛片牲交大片 | 久久99精品久久久 | 两个人日本在线观看视频 | 久久精品国产999大香线焦 | 日韩不卡在线 | 色五月激情五月 | 麻花传媒68xxx在线观看 | 玥可岚在线 | 国产成人免费高清激情视频 | 亚洲av无码精品色午夜蛋壳 | 国产精品丝袜一区二区三区 | 四虎tv| 52精品免费视频国产专区 | 久久久久久夜精品精品免费 | 一个色在线 | 日日躁夜夜躁狠狠久久av | 特级淫片国产免费高清视频 | 日韩一区在线播放 | 久久精品国产亚洲av四虎 | 亚洲国产精品a在线 | 黄桃av无码免费一区二区三区 | 护士脱了内裤让我爽了一夜视频 | 99精品视频在线观看免费专区 | 国产亚洲av片在线观看播放 | 久热中文字幕在线精品免费 |