多线程使用hgetall获取大量数据导致的其他连接重试次数太多报错:
redis.clients.jedis.exceptions.JedisClusterMaxRedirectionsException: Too many Cluster redirections?
at redis.clients.jedis.JedisClusterCommand.runWithRetries(JedisClusterCommand.java:97) ~[stormjar.jar:?]at redis.clients.jedis.JedisClusterCommand.runWithRetries(JedisClusterCommand.java:131) ~[stormjar.jar:?]
at redis.clients.jedis.JedisClusterCommand.runWithRetries(JedisClusterCommand.java:152) ~[stormjar.jar:?]
at redis.clients.jedis.JedisClusterCommand.runWithRetries(JedisClusterCommand.java:131) ~[stormjar.jar:?]
at redis.clients.jedis.JedisClusterCommand.runWithRetries(JedisClusterCommand.java:152) ~[stormjar.jar:?]
at redis.clients.jedis.JedisClusterCommand.runWithRetries(JedisClusterCommand.java:131) ~[stormjar.jar:?]
at redis.clients.jedis.JedisClusterCommand.run(JedisClusterCommand.java:30) ~[stormjar.jar:?]
at redis.clients.jedis.JedisCluster.hgetAll(JedisCluster.java:502) ~[stormjar.jar:?]
at com.redis.RedisManager.hgetAll(RedisManager.java:163) ~[stormjar.jar:?]
at org.apache.storm.daemon.executor$fn__8058$fn__8071.invoke(executor.clj:795) ~[storm-core-1.0.2.jar:1.0.2]
at org.apache.storm.util$async_loop$fn__624.invoke(util.clj:482) [storm-core-1.0.2.jar:1.0.2]
at clojure.lang.AFn.run(AFn.java:22) [clojure-1.7.0.jar:?]
redirections:节点调转次数,就是是重试次数
redis本身的操作是单线的原子操作,一般的操作时间都很短,最好不使用长时间连接。例如:使用hgetall对同一个key读取时,其他链接就会不断重试,导致重试次数太多错误。
参考文档:http://carlosfu.iteye.com/blog/2251034