2014-09-12 37 views
0

不幸的是,JDK的HttpUrlConnection或UrlConnection不能异步运行。所以,如果HTTP连接因任何原因而挂起,你最终将失去一个线程。另外,Selector的多路复用允许仅使用少量线程来进行大量的HTTP GET调用。 因此,我一直在开发一个使用NIO的Selector的代码并进行HTTP GET。因此,除了完全支持HTTP 1.1之外,核心运行良好,我必须支持Keep-Alive,分块传输模式和HTTP 1.1支持的其他一些内容。使用Netty制作大量带有少量线程的http GET请求

所以,我一直在寻找与Netty做到这一点,但我一直没能找到一个例子,它展示了如何使用单个线程进行多个HTTP GET请求。

所以,如果有人能指点我一个网络例子或任何其他适当的图书馆,我将不胜感激。 谢谢

回答

1

Netty的Channel EventLoop模型管理最小数量的线程以支持最大数量的客户端连接。它被烘焙到框架中。

API文档中有几个HTTP示例(在源文件中有一个名为示例的文件夹)。基于来自Manning书Netty in Action的示例,在GitHub上也有几个HTTP示例。本书的第15章 - EventLoop和Thread-Model详细讨论了这一切。

+0

谢谢你的提示。我将开始观看Channel EventLoop。 – 2014-09-13 05:52:22