redis如何配置standAlone版的jedisPool

JedisConnectionFactory的构造函数看

public JedisConnectionFactory(RedisStandaloneConfiguration standaloneConfig) {
   this((RedisStandaloneConfiguration)standaloneConfig, (JedisClientConfiguration)(new JedisConnectionFactory.MutableJedisClientConfiguration()));
}

他不是不用pool,而是用了一个自己的JedisConnectionFactory.MutableJedisClientConfiguration()
MutableJedisClientConfiguration是一个内类,还不是public的,是protect的。你还没办法在你的configuration里边使用这个类。
MutableJedisClientConfiguration会自动生成一个JedisPoolConfig,这个JedisPoolConfig继承自GenericObjectPoolConfig,他的pool的配置就是8个。
所以,如果你要用RedisStandaloneConfiguration,基本上就是8个的pool配置。看来spring 也认为,既然是redis的单机版,8个够用了。

如果非要设置自己的pool参数:

JedisPoolConfig jedisPoolConfig = new JedisPoolConfig();
jedisPoolConfig.setMaxTotal(maxActive);
jedisPoolConfig.setMaxWaitMillis(maxWait);
jedisPoolConfig.setMaxIdle(maxIdle);
jedisPoolConfig.setMinIdle(minIdle);

JedisConnectionFactory factory = new JedisConnectionFactory(jedisPoolConfig);
factory.setHostName(host);
factory.setPort(port);
factory.setTimeout(timeout);
factory.setPassword(password);

猜你喜欢

转载自blog.csdn.net/gezilan/article/details/82117039