[redisson]singleServerConfig 单机模式创建redisson 报“java.io.IOException: 远程主机强迫关闭了一个现有的连接。”

2024-07-18 760 views
3
  获取锁,等待自己释放,或者已释放都会出现‘远程主机关闭一个连接’

redis-starter 2.1.5.RELEASE

   redisson  3.11.1   

eg:1

Redisson配置

singleServerConfig: address: "redis://127.0.0.1:6379" password: null clientName: null database: 7 #选择使用哪个数据库0~15 idleConnectionTimeout: 10000 pingTimeout: 1000 connectTimeout: 10000 timeout: 3000 retryAttempts: 3 retryInterval: 1500 reconnectionTimeout: 3000 failedAttempts: 3 subscriptionsPerConnection: 5 subscriptionConnectionMinimumIdleSize: 1 subscriptionConnectionPoolSize: 50 connectionMinimumIdleSize: 32 connectionPoolSize: 64 dnsMonitoringInterval: 5000

dnsMonitoring: false

threads: 0 nettyThreads: 0 codec: class: "org.redisson.codec.KryoCodec" transportMode: "NIO"

创建方式
@Bean public RedissonClient redisson() throws IOException { // 本例子使用的是yaml格式的配置文件,读取使用Config.fromYAML,如果是Json文件,则使用Config.fromJSON Config config = Config.fromYAML(RedissonManager.class.getClassLoader().getResource("redisson/redisson-dev.yml")); return Redisson.create(config); }

eg :2

@Bean // public RedissonClient getRedisson(){ // List cluster = redissonProperties.getNodes(); // String[] nodes = new String[cluster.size()]; // //redisson版本是3.5,集群的ip前面要加上“redis://”,不然会报错,3.2版本可不加 // for(int i=0;i<cluster.size();i++){ // nodes[i] = "redis://"+cluster.get(i); // } // Config config = new Config(); // //TODO 集群模式下需要改成如下模式 //// config.useClusterServers() //这是用的集群server //// .setScanInterval(2000) //设置集群状态扫描时间 //// .addNodeAddress(nodes); // //.setPassword(password); // config.useSingleServer().setAddress(nodes[0]); // RedissonClient redisson = Redisson.create(config); // // //可通过打印redisson.getConfig().toJSON().toString()来检测是否配置成功 // return redisson; // }

直接使用这个方式创建,,同样都报了同样的错误

回答

9

没有办法上传图片,本来打算上传图片的,能上传图片就好了

1

我也遇到了,请问解决了没有 image

6

没有解决,今天继续找解决方案,如有解决方案烦劳更新下。谢谢

9

好的

0

无论代码修改成什么样的创建方式和包,都会出现这样问题

6

redisson 版本回退到3.7.3 这个问题就解决了。。。

    <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-data-redis</artifactId>
    </dependency>
    <!--redisson客户端-->
    <dependency>
        <groupId>org.redisson</groupId>
        <artifactId>redisson</artifactId>
        <version>3.7.3</version>
    </dependency>
8

目前发现只有这一个版本是好 的。其他的后续的版本都是有问题的

1

你用redis-cli试了吗?