是否应该使用连接池?
最后更新于 2024年3月22日
问题
是否应该使用连接池?
答案
始终建议使用连接池。否则,每个请求都将打开一个新连接。这会让你面临许多可能暂时阻止连接打开的问题。此外,如果你发出大量请求,将频繁地打开和关闭连接,这些操作有时可能会失败。使用连接池,你只需打开几个连接来处理所有请求,而不会在每个请求后关闭连接。这消除了上述问题,并且由于不会浪费时间在打开和关闭连接上,因此会获得更好的性能。除非客户端关闭连接或不响应 TCP keep-alive 消息,否则 Redis 连接会一直保持打开状态。Redis 将关闭连续五分钟不响应 keep-alive 的空闲连接。在这种情况下,Redis 只能假定客户端已关闭了连接。
参考资料
如果想查看活动连接,始终可以使用 CLIENT LIST 命令。支持连接池的客户端示例
并非所有客户端都提供连接池功能:例如,StackExchange 复用单个连接。