Commit 31334398 by 李晓钟

解决旧连接超时 误删除新session连接的问题。

parent 44a773d3
...@@ -72,12 +72,14 @@ public class ChannelInboundHandler extends ChannelInboundHandlerAdapter { ...@@ -72,12 +72,14 @@ public class ChannelInboundHandler extends ChannelInboundHandlerAdapter {
@Override @Override
public void channelInactive(ChannelHandlerContext ctx) throws Exception { public void channelInactive(ChannelHandlerContext ctx) throws Exception {
super.channelInactive(ctx);
Long clientId = ctx.channel().attr(ChannelManager.CLIENT_ID).get(); Long clientId = ctx.channel().attr(ChannelManager.CLIENT_ID).get();
log.info("触发channelInactive方法 clientId {}", clientId); log.info("触发channelInactive方法 clientId {}", clientId);
} }
@Override @Override
public void exceptionCaught(ChannelHandlerContext ctx, Throwable cause) public void exceptionCaught(ChannelHandlerContext ctx, Throwable cause)
throws Exception { throws Exception {
super.exceptionCaught(ctx, cause);
Long clientId = ctx.channel().attr(ChannelManager.CLIENT_ID).get(); Long clientId = ctx.channel().attr(ChannelManager.CLIENT_ID).get();
log.info("触发exceptionCaught方法 clientId {}", clientId); log.info("触发exceptionCaught方法 clientId {}", clientId);
} }
......
...@@ -97,6 +97,10 @@ public class ChannelManager { ...@@ -97,6 +97,10 @@ public class ChannelManager {
clientInfo.setNioSocketChannel(channel); clientInfo.setNioSocketChannel(channel);
clientInfo.setToken(""); clientInfo.setToken("");
log.info("本地存缓存key {}", genKeyForSessionInfoMap(clientId, platform)); log.info("本地存缓存key {}", genKeyForSessionInfoMap(clientId, platform));
ClientInfo oldChanel = ChannelManager.SESSION_INFO_MAP.get(genKeyForSessionInfoMap(clientId, platform));
if(oldChanel != null) {
oldChanel.getNioSocketChannel().close();
}
ChannelManager.SESSION_INFO_MAP.put(genKeyForSessionInfoMap(clientId, platform), clientInfo); ChannelManager.SESSION_INFO_MAP.put(genKeyForSessionInfoMap(clientId, platform), clientInfo);
} }
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment