Jedis使用中遇到的一些问题timeout no connection

本文讨论了Redis服务端与客户端间采用TCP协议进行通信时长连接的实现方式及注意事项,包括连接池管理、会话清理机制、无效链接检测与重试等关键点。同时针对官方推荐的客户端API——Jedis,在实际应用中的配置建议进行了详细说明。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

redis 服务端与客户端之间使用TCP协议,一个链接一个session,请求和响应成对。另外基于逻辑服务与redis之间来看,从性能而言长连接是较好的选择。


实现长连接需要注意如下几点:

1.连接数收敛。  意味着要维护一个连接池,控制最大连接数,保持最小链接活跃,均匀分配链接

2.会话清理。 异常通讯时,必须先确保上一个命令已经完全结束,否则此回话应该被废弃(链接应该关闭)

3.快速检测无效链接,并容许重试。



jedis作为官方指定的客户端api,实现上看是比较完整的,但是使用中需要注意如下几点:

1.最大连接数,要设置的合理  maxactive,否则不利于连接数收敛,造成对redis服务端压力过大

2.最大空闲连接数,要设置合理的maxidel,否则空闲链接保持过大,造成不必要的开销

3.超时时间设置合理

4.使用中异常的链接要调用正确的方法,通知jedis回收(起始这块jedis可考虑自行做进去的)

5.链接有效性的检查,jedis有些重。  特别是打开他的testonbutton,但是基于长连接池而言,这个起始应该是有一个线程来合理的处理

6.重试,有些代码从连接池获取资源时,重试设置为1. 这个非常不利于系统负载低的时候。




评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值