Java org.jboss.netty突然停止服务
我正在使用org.jboss.netty编写一个游戏服务器。老实说,这是我第一次编写TCP/IP应用程序 Netty突然停止在handler中调用我的函数。我尝试添加以下行以取消空闲连接:Java org.jboss.netty突然停止服务,java,tcp,netty,Java,Tcp,Netty,我正在使用org.jboss.netty编写一个游戏服务器。老实说,这是我第一次编写TCP/IP应用程序 Netty突然停止在handler中调用我的函数。我尝试添加以下行以取消空闲连接: LINE 1 TO PIPELINE : pipeline.addLast("timeout", new IdleStateHandler(idleTimer, 82 , 0, 0)); LINES TO HANDLER : public void channelIdle(Channel
LINE 1 TO PIPELINE : pipeline.addLast("timeout", new IdleStateHandler(idleTimer, 82 , 0, 0));
LINES TO HANDLER :
public void channelIdle(ChannelHandlerContext ctx, IdleStateEvent e) throws Exception {
super.channelIdle(ctx, e);
ctx.getChannel().close();
}
我仍然面临着同样的问题
在这个游戏服务器中,我有定时任务(有单独的executerthread池),例如每3秒它就向1800个客户端发送一次消息。这会是个问题吗?你曾经面对过这样的问题吗
我认为定期向客户推送数据可能是个问题。因为当我们在netty中使用线程池时,缓慢的连接或糟糕的网络可能会导致长的发送队列,从而影响池中的可用线程数。您觉得怎么样?您确定没有以某种方式阻止ioworker线程吗?我会采取一些线程转储,以确保
jstack <pid>
jstack
谢谢你的回答。我不知道jstack命令。事实上,不知何故,工作线程被阻塞了。如果这种情况再次发生,jstack将帮助我找出实际问题。