1

我们在我们的应用程序中使用 redis 进行缓存。

我们的目标是在池大小耗尽或超过某个阈值时创建新的 Redis 连接,以便我们可以将空闲连接的数量保持在最低限度。通过这种方式,redis-server 资源被分配给真正需要它的应用程序服务器。

在我们的 java 应用程序中,我们使用 spring-data-redis 1.4.2 的 spring 的 JedisConnectionFactory,它在内部使用 Jedis 2.6.2 和 commons-pool 2.0。

最新版本的 GenericObjectPool 没有动态增加池大小的选项。(早期版本的 commons-pool 有 whenExhaustAction 选项)

我也找不到在 Jedis 中传递自定义对象池的方法。

请建议我们如何实现这一目标。是否有任何其他 Redis-Client 对此提供支持?

4

1 回答 1

1

如果将该maxTotal属性设置为负值,则池中的实例数将没有限制。您可以将此与maxIdle设置结合使用,以确保在任何给定时间不超过maxIdle空闲连接。

于 2017-07-23T16:19:13.107 回答