我有一个使用Jboss Netty实现的网络服务器。 它通过原始TCP和HTTP为应用程序提供服务,并作为独立进程运行。 与TCP连接的客户端可以将数据传输到与HTTP连接的客户端,反之亦然。
现在我需要让它在servlet环境中运行。 netty是否提供了这样做的标准方法,或者我必须编写我的适配器? 我可以用TCP传输做什么?我可以将它包含在servlet容器中吗?
this是一个类似的问题,但没有明确的答案
答案 0 :(得分:2)
您可以创建一个链接到现有Netty实施的HttpTunnelingServlet
。请参阅org.jboss.netty.channel.socket.http API文档。
本文档使用Spring bean进行Netty设置。但是,将配置和设置移至ServletListener
应该很容易。我不是100%确定这是否可行,因为安装程序需要连接到servlet配置中指定的LocalAddress
。问题可能是地址在servlet启动之前无效,我想,在听众启动之后会发生这种情况。另一种选择是升级HttpTunnelingServlet
并添加到init()
实施。
无论您使用何种方法,您仍然需要设置并启动TCP频道等,就像您以前一样。