一、问题描述
redisson在使用时抛出以下异常
2021-03-24 14:18:49.172 INFO 8 --- [isson-netty-2-1] o.r.c.pool.MasterPubSubConnectionPool : 1 connections initialized for zcx.zcx.com/10.xx.xx.17:30167
2021-03-24 14:18:49.175 INFO 8 --- [sson-netty-2-24] org.redisson.connection.SingleEntry : master zcx.zcx.com/10.172.17.17:30167 has changed to zcx.zcx.com/10.xx.xx.18:30167
2020-09-15 10:51:24,716 [INFO] o.r.c.SingleConnectionManager 107 - Detected DNS change. zcx.zcx.com has changed from 10.xx.xx.17 to 10.xx.xx.18
2020-09-15 10:51:26,751 [ERROR] o.r.c.SingleConnectionManager 114 - failed to create a child event loop
二、解决方案
场景是我们部署的redis是k8s部署的,一个域名对应了4台机器,所以在访问域名的时候会存在ip的缓存问题,这时候redisson的dns的解析会发生异常
解决方案可以将redisson的dns检测关闭即可解决,这也是在github上看到的解决方案:
redisson.setDnsMonitoring(false).setDnsMonitoringInterval(-1);