咨询JedisPool中timeout、connectionTimeout等参数的含义
JedisPool构造方法中几个超时参数的含义
- timeout:早期Jedis版本的通用超时参数,同时覆盖TCP连接建立和读写操作的超时逻辑。后续版本为了更精细化控制,将其拆分为
connectionTimeout和soTimeout,新版本里如果还保留这个参数,本质是一次性设置后两者的快捷方式。 - connectionTimeout:专门管控Jedis客户端与Redis服务器建立TCP连接的超时时长。发起连接请求后,若超出这个时间仍未成功建立连接,会直接抛出连接超时异常,单位一般为毫秒。
- soTimeout(Socket Timeout):控制客户端与服务器连接建立后,读写操作的超时时间。比如发送命令给Redis后,若在设定时间内没收到服务器响应,就会触发读写超时异常,单位通常是毫秒。
- infiniteSoTimeout:这是一个用于标识“无读写超时”的参数(通常对应常量值-1),设置后客户端会一直等待Redis服务器的响应,直到收到结果或连接出现其他异常。
内容的提问来源于stack exchange,提问作者Anandakrishnan
相关产品推荐
相关产品推荐

