From 8373814e65db97bd9b2ac7f0bc07cc1127e12554 Mon Sep 17 00:00:00 2001 From: retire Date: Thu, 26 Apr 2018 12:44:57 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E5=A4=8D=20redis=E8=BF=9E=E6=8E=A5?= =?UTF-8?q?=E8=B6=85=E6=97=B6=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../component/redis/JbootRedisConfig.java | 36 +++++++++++++++++++ .../redis/jedis/JbootJedisClusterImpl.java | 15 ++++++++ .../component/redis/jedis/JbootJedisImpl.java | 16 +++++++++ 3 files changed, 67 insertions(+) diff --git a/src/main/java/io/jboot/component/redis/JbootRedisConfig.java b/src/main/java/io/jboot/component/redis/JbootRedisConfig.java index 98bec709..e4f13e66 100644 --- a/src/main/java/io/jboot/component/redis/JbootRedisConfig.java +++ b/src/main/java/io/jboot/component/redis/JbootRedisConfig.java @@ -44,6 +44,10 @@ public class JbootRedisConfig { private Integer numTestsPerEvictionRun; private Integer maxAttempts; private String type = TYPE_JEDIS; + private Integer maxTotal; + private Integer maxIdle; + private Integer minIdle; + private Integer maxWaitMillis; public String getHost() { @@ -178,6 +182,38 @@ public class JbootRedisConfig { this.type = type; } + public Integer getMaxTotal() { + return maxTotal; + } + + public void setMaxTotal(Integer maxTotal) { + this.maxTotal = maxTotal; + } + + public Integer getMaxIdle() { + return maxIdle; + } + + public void setMaxIdle(Integer maxIdle) { + this.maxIdle = maxIdle; + } + + public Integer getMinIdle() { + return minIdle; + } + + public void setMinIdle(Integer minIdle) { + this.minIdle = minIdle; + } + + public Integer getMaxWaitMillis() { + return maxWaitMillis; + } + + public void setMaxWaitMillis(Integer maxWaitMillis) { + this.maxWaitMillis = maxWaitMillis; + } + public Set getHostAndPorts() { Set haps = new HashSet<>(); String[] hostAndPortStrings = host.split(","); diff --git a/src/main/java/io/jboot/component/redis/jedis/JbootJedisClusterImpl.java b/src/main/java/io/jboot/component/redis/jedis/JbootJedisClusterImpl.java index 31896579..d84a457f 100644 --- a/src/main/java/io/jboot/component/redis/jedis/JbootJedisClusterImpl.java +++ b/src/main/java/io/jboot/component/redis/jedis/JbootJedisClusterImpl.java @@ -80,6 +80,21 @@ public class JbootJedisClusterImpl extends JbootRedisBase { poolConfig.setNumTestsPerEvictionRun(config.getNumTestsPerEvictionRun()); } + if (StringUtils.isNotBlank(config.getMaxTotal())) { + poolConfig.setMaxTotal(config.getMaxTotal()); + } + + if (StringUtils.isNotBlank(config.getMaxIdle())) { + poolConfig.setMaxIdle(config.getMaxIdle()); + } + + if (StringUtils.isNotBlank(config.getMinIdle())) { + poolConfig.setMinIdle(config.getMinIdle()); + } + + if (StringUtils.isNotBlank(config.getMaxWaitMillis())) { + poolConfig.setMaxWaitMillis(config.getMaxWaitMillis()); + } this.jedisCluster = newJedisCluster(config.getHostAndPorts(), timeout, maxAttempts, password, poolConfig); } diff --git a/src/main/java/io/jboot/component/redis/jedis/JbootJedisImpl.java b/src/main/java/io/jboot/component/redis/jedis/JbootJedisImpl.java index e93295de..6fff78e9 100644 --- a/src/main/java/io/jboot/component/redis/jedis/JbootJedisImpl.java +++ b/src/main/java/io/jboot/component/redis/jedis/JbootJedisImpl.java @@ -82,6 +82,22 @@ public class JbootJedisImpl extends JbootRedisBase { poolConfig.setNumTestsPerEvictionRun(config.getNumTestsPerEvictionRun()); } + if (StringUtils.isNotBlank(config.getMaxTotal())) { + poolConfig.setMaxTotal(config.getMaxTotal()); + } + + if (StringUtils.isNotBlank(config.getMaxIdle())) { + poolConfig.setMaxIdle(config.getMaxIdle()); + } + + if (StringUtils.isNotBlank(config.getMinIdle())) { + poolConfig.setMinIdle(config.getMinIdle()); + } + + if (StringUtils.isNotBlank(config.getMaxWaitMillis())) { + poolConfig.setMaxWaitMillis(config.getMaxWaitMillis()); + } + this.jedisPool = newJedisPool(poolConfig, host, port, timeout, password, database, clientName); } -- Gitee