使用Netty的Servlet API实现

时间:2011-09-16 03:52:29

标签: java servlets nio netty

是否有人在Netty之上构建了Servlet API实现? 我很想建立自己的,因为我不能谷歌实施。

基本上我正在寻求足够的支持让球衣运转起来(希望球衣没有做任何线索的东西)。

4 个答案:

答案 0 :(得分:13)

Jersey不需要servlet - 即使使用JDK中包含的轻量级http服务器也可以正常运行,甚至可以运行Grizzly NIO框架(类似于Netty - 请参阅grizzly.java.net)。要了解如何使其与Netty一起运行,您可能需要查看Jersey工作区中的jersey-grizzly2模块 - 如果您愿意开发并为Jersey项目做出贡献,那就太好了。 现在,为了让你失望,泽西岛确实使用了ThreadLocals。我们一直计划引入对非阻塞异步调用的支持,但这需要相当多的重构,因此只有2.0版本(在最后一次实现JAX-RS 2.0)。无论如何,除了非阻塞的东西之外,在Netty的类似Grizzly的框架上运行它的“轻量级”仍然是有用的。

答案 1 :(得分:4)

如果您希望JerseyNetty一起使用,则可能需要安全并使用org.jboss.netty.channel.socket.oio.OioServerSocketChannelFactory

org.jboss.netty.channel.socket.nio.NioServerSocketChannelFactory

这将允许ThreadLocal内容在负载下正常工作。

当然,当Jersey升级为不使用ThreadLocal,而ChannelLocal时,则不再需要这样做。

答案 2 :(得分:2)

如果你想让Jersey使用Netty,你可以使用https://github.com/cgbystrom/jersey-netty

提供的绑定

答案 3 :(得分:1)

您是否在寻找Netty-Servlet-bridge

  

该项目为Netty.IO框架(http://netty.io/)提供了Servlet API实现。

     

Netty Servlet Bridge允许将现有的基于Servlet API的Web应用程序集成到Netty支持的基础架构中。