Redis 批量优化方法

适合的maxTotal

1、业务希望Redis并发量

2、客户端执行命令时间

3、Redis资料:例如nodes(例如应用个数)*maxTotal是不能超过redis的最大连接数。(config get maxclients)

4、资源开销:例如虽然希望控制空闲连接,但是不希望因为连接池的频繁释放创建连接造成不必要开销。

 

优化IO的几种方法

1、命令本身优化:例如慢查询的keys、hgetall bigkey

2、减少网络通信次数

3、降低接入成本:例如客户端长连接/连接池、NIO等

 

四种批量优化的方法

1、串行mget

2、串行IO

3、并行IO

4、hash_tag

 

Redis 批量优化方法

 

Redis 批量优化方法

 

Redis 批量优化方法

Redis 批量优化方法

 

四种方案优缺点分析:

方案 优点 缺点 网络IO
串行mget

编程简单

少量keys满足需求

大量keys请求延迟严重 O(keys)
串行IO

编程简单

少量节点满足需求

大量node延迟严重 O(nodes)
并行IO

利用并行特性

延迟取决于最慢的节点

利用

编程复杂

超市定位问题难

O(max_slow(node))
hash_tag 性能最高

读写增加tag维护成本

tag分布易出现数据倾斜

O(1)

 

转载于:https://my.oschina.net/u/3777515/blog/1643487