如何在Web应用程序中使用Netty – 采取适当的配置步骤

我正在尝试将Netty设置为在我的Web应用程序中运行嵌入式。

我找到了以下文档: http : //docs.jboss.org/netty/3.2/api/org/jboss/netty/channel/socket/http/package-summary.html#package_description ,它描述了如何配置Web。启动Netty servlet的xml文件。

现在该文件说:

其次,您必须使用本地传输将基于Netty的服务器应用程序绑定在相同的Servlet上下文或共享类加载器空间中(请参阅LocalServerChannelFactory。)您可以使用您喜欢的IoC框架(如JBoss Microcontainer,Guice和Spring)来执行此操作。 以下示例显示如何将echo服务器绑定到JBossAS 5中上面指定的端点(web.xml):

这听起来很合理,但我不清楚 – 实际上 – 应该如何运作。 假设我想使用Spring作为Ioc容器,将netty绑定到本地传输的正确bean配置是什么?

另外,我如何启动Spring上下文? 来自web.xml?

谢谢

我个人推荐使用弹簧。 它可以与阳光下的几乎所有东西融为一体。

请查看以下链接 ,该链接显示如何将Netty服务器配置为spring bean,然后在Web应用程序中使用它。

这是你为spring + web应用程序做的方式。

 1)为服务器,管道工厂等创建相关的spring bean。
 2)在web.xml中配置spring dispatcher servlet。

注意 :以上配置用于在某个端口运行Netty服务器以及您的Web应用程序。

基本上你可以在任何bean上调用spring bean init-method属性来执行netty server启动

您可以按照post中的链接中的说明配置servlet。 您可以在servlet bean中交叉引用任何spring bean(比如netty服务器bean),或者在servlet bean的init-method中调用它。

另一种可能性是您可以监听spring应用程序事件,然后在容器启动后,您可以手动启动servlet / netty服务器。

如果您使用的是grails应用程序,则可以使用bootstrap类(在应用程序启动时调用的便捷类)在Web应用程序启动时启动Netty服务器

Spring提供了多种方法来满足您的需求,您可以根据自己的方便选择。