为啥Redis使用pipelining会更快
Redis 使用 为啥
2023-06-13 09:19:50 时间
这是一个很考究细节的问题,大部分人都会说:因为减少了网络开销,那么,看如下例子:
import time import redis client = redis.Redis(decode_responses=True) count = 10000
print("no_pipelining: {} seconds; with_pipelining: {} seconds".format(mid - start, end - mid))
为什么执行结果相差如此之大呢?
$ python test.py no_pipelining: 2.3809118270874023 seconds; with_pipelining: 0.4370129108428955 seconds
因为这是连接本地的redis,所以网络开销非常小,当然,这里仍然有一部分是网络开销影响,可是除此之外是否还有其它影响因素呢? 答案是有,比如OS进程调度,当不使用管道时,Redis处理每个命令之间是有时间空隙的,因此OS很有可能会将Redis进程转换为sleep状态, 然后运行其它程序,而使用pipelining时,可以提高CPU利用率,Redis空闲的时间没有那么多,因此,这也是pipelining速度会更快的 重要原因之一。
ref:
https://redis.io/topics/pipelining
到此这篇关于为啥Redis使用pipelining会更快的文章就介绍到这了,更多相关Redis使用pipelining快内容请搜索以前的文章或继续浏览下面的相关文章希望大家以后多多支持!
我想要获取技术服务或软件
服务范围:MySQL、ORACLE、SQLSERVER、MongoDB、PostgreSQL 、程序问题
服务方式:远程服务、电话支持、现场服务,沟通指定方式服务
技术标签:数据恢复、安装配置、数据迁移、集群容灾、异常处理、其它问题
本站部分文章参考或来源于网络,如有侵权请联系站长。
数据库远程运维 为啥Redis使用pipelining会更快
相关文章
- 策略处理Redis中Java使用过期策略的有效方法(redisjava过期)
- 使用PHP操作Redis实例:简单高效的数据存储方案(php操作redis实例)
- 如何使用微擎实现Redis功能(微擎如何开通redis)
- 快速使用并行写入Redis解决大数据问题(并行写redis)
- 使用Redis快速为数据设置键值对(给redis里面set值)
- 校招红色象征Redis面试篇(校招redis面试)
- 让Redis支持注解事务回滚(注解事务和redis回滚)
- 互联网Redis开源技术探索之旅(互联网redis源码)
- 为何要使用Redis了解高效存储的优越性(为何会使用redis)
- Web应用程序提升运行效率Redis技术实践(web应用使用redis)
- 使用SQL快速将数据导入Redis(sql导入redis)
- 使用Redis提升网页响应速度(使用redis做页面缓存)
- 安全使用外网Redis客户端实现数据交互(外网redis客户端)
- 使用命令行脚本快速执行Redis操作(命令行脚本执行redis)
- Redis集群搭建与性能测试(redis集群搭建并测试)
- 深入了解Redis集群哨兵的概念(redis集群哨兵的概念)
- 探究Redis中的文件构成(redis里面有哪些文件)
- 使用 Redis 手把手指引完善配置更新(redis 配置更新)
- 使用Redis实现远程删除数据(redis远程删除数据)
- Redis视频教程学习一把掌握NoSQL缓存技能(redis视频教程全套)
- Redis使用从节点进行数据备份(redis获取哪个从节点)
- 使用Redis连接池的正确方式(redis连接池怎么使用)
- 基于Redis的运维框架设计与实现(redis 运维框架)
- 如何使用Redis搭配密码访问(redis设置密码后访问)