在我们在netty服务器3.2.x中开发的游戏应用程序中。我们能够正常玩游戏,但有时netty服务器无法处理客户端请求。 我们检查了netty服务器套接字连接,并且已成功连接。 在这种情况下没有异常,但服务器卡住了。一旦我们重新启动服务器,我们就可以玩游戏了。
我们也尝试过netty 3.10.x jar,但同样存在问题。
我们是否需要配置任何引导程序设置或代码中所需的任何其他更改。
请提出您的建议。
代码:
public void setAddress(String ip, int port) {
Timer timer = new HashedWheelTimer();
ServerBootstrap bootstrap = new ServerBootstrap(new NioServerSocketChannelFactory(Executors.newCachedThreadPool(), Executors.newCachedThreadPool()));
// Set up the pipeline factory.
bootstrap.setPipelineFactory(new ChannelPipelineFactory()
{
public ChannelPipeline getPipeline() throws Exception
{
return Channels.pipeline(new AMFDecoder()
, new IdleStateHandler(timer, 6, 0, 0)
, new MessageHandler() // Message handler
, new AMFEncoder()); // Message encoder
}
});
// Setup the server options
bootstrap.setOption("child.tcpNoDelay", true);
bootstrap.setOption("child.keepAlive", true);
bootstrap.setOption("reuseAddress", true);
bootstrap.setOption("sendBufferSize", 32767);
bootstrap.setOption("receiveBufferSize", 32767);
addr = new InetSocketAddress(ip, port);
return;
}