为了账号安全,请及时绑定邮箱和手机立即绑定

急求!!!!get的速度与set存储的String长度有关系?正相关?万分感谢

急求!!!!get的速度与set存储的String长度有关系?正相关?万分感谢

阿晨1998 2019-06-09 10:49:27
redis如果set一个非常简单的字符串,比方a,在使用ab进行并发测试下,redis读取时非常快,ab上反映的的并发连接可以到三千,但是当set存储的这个字符串变长,在并发下redis的get读取速度就相应的在变慢,当存储一个序列化的数据时候,字符比较多,这时候qps下降到只有160左右,这个redis严重限制了并发。使用redis,不可能不存储比较长的序列化字符串数据,但这极大的降低了读取速度,redis这个问题该怎么解决?使用的node服务,node中使用的ioredis进行的redis操作
查看完整描述

2 回答

?
慕婉清6462132

TA贡献1804条经验 获得超2个赞

进行这个并发测试,之前忽略了带宽的问题。在带宽不变的情况下,只要请求回送的字符增多,那么并发下的qps就会下降。服务器上行带宽有限,每个请求回送数据比较多,导致这里出现了拥堵,造成了很多请求等待时间过长,qps下降。并发数越多,上行出口这里等待的请求数越多,qps就直线下降。
                            
查看完整回答
反对 回复 2019-06-09
?
慕哥9229398

TA贡献1877条经验 获得超6个赞

1、看下你压测时候连接池是否够,是否把压测端的连接池打满了。2、redis单线程,对redis处理的速度是够的,如果大部分都是过长的数据时候,单线程操作时候,IO比例会占用过长时间。3、可以考虑Redis集群,把数据均衡到多个集群中,不管多机多实例部署还是单机多实例部署,就是充分利用CPU资源。
                            
查看完整回答
反对 回复 2019-06-09
  • 2 回答
  • 0 关注
  • 304 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号