专注于 JetBrains IDEA 全家桶,永久激活,教程
持续更新 PyCharm,IDEA,WebStorm,PhpStorm,DataGrip,RubyMine,CLion,AppCode 永久激活教程

[1]Redis pipeline vs transaction

1、trancaction

redis 中的事务是通过 multi 命令开启,之后的命令都会返回 QUEUED 表示命令已经入队列到redis server 被缓存起来,此时命令还没有被执行,通过执行exec 命令提交。事务是原子性的操作。但是不支持回滚操作。提供了 watch命令实现类似乐观锁,监视某个key在事务执行过程中值是否发生变化。变化则不执行。

2、pipeline

pipeline 则是客户端把命令缓存起来,最后一下提交给服务器执行。减少了RTT,往返时间。不是原子性的操作。注意中间组装的命令个数限制,不然数据量过大,一方面增加客户端的等待时间,一方面会造成网络阻塞。

RTT: 假设客户端在北京,redis服务端在上海,两地直线距离约1300KM,那么一次RTT时间=13002/(3000002/3)=13毫秒(这里假设光纤为光速的2/3速度),那么客户端1秒内大约只能执行80次左右的命令,这个和redis的高并发高吞吐特效背道而驰。

疑惑

trancaction 执行过程中不会被别的命令打断
pipeline 执行过程中可能会被打断。
是怎么搞得。

文章永久链接:https://tech.souyunku.com/45152

未经允许不得转载:搜云库技术团队 » [1]Redis pipeline vs transaction

JetBrains 全家桶,激活、破解、教程

提供 JetBrains 全家桶激活码、注册码、破解补丁下载及详细激活教程,支持 IntelliJ IDEA、PyCharm、WebStorm 等工具的永久激活。无论是破解教程,还是最新激活码,均可免费获得,帮助开发者解决常见激活问题,确保轻松破解并快速使用 JetBrains 软件。获取免费的破解补丁和激活码,快速解决激活难题,全面覆盖 2024/2025 版本!

联系我们联系我们