我正在使用redis
将ofbiz
与jedis client
进行整合。
一个redis服务器正在被不同的应用程序使用。
我的问题是
默认情况下JedisPool
将保留多少连接。
如果我创建多个JedisPool
,它会影响redis
效果
注意:我在另一个应用程序中使用默认配置创建JedisPool
。
client = new JedisPool(ip, port);
有没有更好的方法?建议我。谢谢
更新:使用默认配置用户redis server
发起spring data
<bean id="connectionFactory"
class="org.springframework.data.redis.connection.jedis.JedisConnectionFactory"
p:host-name="${app.cache.redis.host}" p:port="${app.cache.redis.port}" p:password="${app.cache.redis.password}" />
答案 0 :(得分:1)
1)默认情况下JedisPool将保留多少连接
通过使用JedisPool进行此实例化,
(1, 1)
您正在使用apache-commons-pool中的client = new JedisPool(ip, port);
。
此通用池的默认配置为:
GenericObjectPoolConfig
2)如果我创建多个JedisPool,它会影响redis性能
是和否。如果您创建多个JedisPool,您将有更多客户端连接到Redis。但是Redis可以为很多连接的客户提供非常好的性能。
您可以在redis.conf中设置Redis max客户端授权号码(例如最多10000个客户端)。
DEFAULT_MAX_TOTAL = 8
DEFAULT_MAX_IDLE = 8
DEFAULT_MIN_IDLE = 0
或在启动时:
maxclients 10000
或使用redis-cli:
./redis-server --maxclients 10000
在默认配置中,授权客户端的数量不受限制。
根据您的使用情况,您可以拥有多个JedisPool,或者只是增加JedisPool的大小(具有8个以上的连接)。