我在servlet过滤器中使用Redis进行身份验证,但我还没有修改 redis.conf
jedis = new Jedis("localhost");
String authToken = jedis.get(uid);
第2行抛出异常。
redis.clients.jedis.exceptions.JedisConnectionException: java.net.SocketException: Broken pipe
redis.clients.jedis.Connection.flush(Connection.java:291)
redis.clients.jedis.Connection.getBinaryBulkReply(Connection.java:214)
redis.clients.jedis.Connection.getBulkReply(Connection.java:205)
redis.clients.jedis.Jedis.get(Jedis.java:105)
filter.AuthFilter.doFilter(AuthFilter.java:38)
org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:52)
答案 0 :(得分:2)
连接似乎已重置/断开连接。当您使用长期连接时(例如,在应用程序启动时连接到Redis,然后反复使用连接),就会发生这种情况。
可能的解决方案是:
答案 1 :(得分:0)