[Docker应用系列·1] 浅析Jedis Pool
本文环境:jedis 2.1.0 redis 2.8.13 Redis无响应 我们的各个子系统均使用Jedis作为Redis的Java Client读写数据。 Jedis底层使用Apache的Common Pool,每个Jedis对象在底层都视为一个Object。 当释放连接失败后,我们的做法只是输出错误日志,这会导致该连接无法回收再利用,最终服务器的连接池会被拖垮,现象就是我们遇到的无响应、重启就好。 此前我们分析过,现在得出的结论是:这不是服务器操作系统连接数的问题,也不是数据频繁读写的问题,而是释放资源时遇到异常时,我们没有将该连接直接断掉、丢弃。 如下是AEnv代码的相关变更情况,仅做参考: 高效读写调研 常用的Jedis读写方式包括:set/get、hset/hget和mset/mget,分别用作基本读写、hash读写和批量读写。 对此,我