支持redis集群配置,升级redisson版本依赖

This commit is contained in:
王跑跑 2025-02-17 09:47:50 +08:00
parent 2230cfa52b
commit f5df6239d0
2 changed files with 45 additions and 10 deletions

View File

@ -16,7 +16,7 @@
<xdocreport.version>1.0.6</xdocreport.version>
<xstream.version>1.4.20</xstream.version>
<junrar.version>7.5.5</junrar.version>
<redisson.version>3.2.0</redisson.version>
<redisson.version>3.16.6</redisson.version>
<sevenzipjbinding.version>16.02-2.01</sevenzipjbinding.version>
<jchardet.version>1.0</jchardet.version>
<antlr.version>2.7.7</antlr.version>

View File

@ -43,33 +43,68 @@ public class RedissonConfig {
private String codec="org.redisson.codec.JsonJacksonCodec";
// @Bean
// Config config() throws Exception {
// Config config = new Config();
// config.useSingleServer().setAddress(address)
// .setConnectionMinimumIdleSize(connectionMinimumIdleSize)
// .setConnectionPoolSize(connectionPoolSize)
// .setDatabase(database)
// .setDnsMonitoringInterval(dnsMonitoringInterval)
// .setSubscriptionConnectionMinimumIdleSize(subscriptionConnectionMinimumIdleSize)
// .setSubscriptionConnectionPoolSize(subscriptionConnectionPoolSize)
// .setSubscriptionsPerConnection(subscriptionsPerConnection)
// .setClientName(clientName)
// .setRetryAttempts(retryAttempts)
// .setRetryInterval(retryInterval)
// .setTimeout(timeout)
// .setConnectTimeout(connectTimeout)
// .setIdleConnectionTimeout(idleConnectionTimeout)
// .setPassword(StringUtils.trimToNull(password));
// Codec codec=(Codec) ClassUtils.forName(getCodec(), ClassUtils.getDefaultClassLoader()).newInstance();
// config.setCodec(codec);
// config.setThreads(thread);
// config.setEventLoopGroup(new NioEventLoopGroup());
// return config;
// }
/**
* redis集群配置 redisson版本需要切换到3.16.6版本及以上
*
* @return Config
* @throws Exception
* @Date 2025年2月13日10:20:51
* @author wangshanzhen2
*/
@Bean
Config config() throws Exception {
String[] tokenizeToStringArray = org.springframework.util.StringUtils.tokenizeToStringArray(address, ",");
String[] nodes = new String[tokenizeToStringArray.length];
for (int i = 0; i < tokenizeToStringArray.length; i++) {
nodes[i] = "redis://" + tokenizeToStringArray[i];
}
Config config = new Config();
config.useSingleServer().setAddress(address)
.setConnectionMinimumIdleSize(connectionMinimumIdleSize)
.setConnectionPoolSize(connectionPoolSize)
.setDatabase(database)
.setDnsMonitoring(dnsMonitoring)
config.useClusterServers()
.addNodeAddress(nodes)
.setMasterConnectionMinimumIdleSize(connectionMinimumIdleSize)
.setMasterConnectionPoolSize(connectionPoolSize)
.setDnsMonitoringInterval(dnsMonitoringInterval)
.setSubscriptionConnectionMinimumIdleSize(subscriptionConnectionMinimumIdleSize)
.setSubscriptionConnectionPoolSize(subscriptionConnectionPoolSize)
.setSubscriptionsPerConnection(subscriptionsPerConnection)
.setClientName(clientName)
.setFailedAttempts(failedAttempts)
.setRetryAttempts(retryAttempts)
.setRetryInterval(retryInterval)
.setReconnectionTimeout(reconnectionTimeout)
.setTimeout(timeout)
.setConnectTimeout(connectTimeout)
.setIdleConnectionTimeout(idleConnectionTimeout)
.setPingTimeout(pingTimeout)
.setPassword(StringUtils.trimToNull(password));
Codec codec=(Codec) ClassUtils.forName(getCodec(), ClassUtils.getDefaultClassLoader()).newInstance();
config.setCodec(codec);
config.setThreads(thread);
config.setEventLoopGroup(new NioEventLoopGroup());
config.setUseLinuxNativeEpoll(false);
return config;
}