我必须在 Java 中实现一个 HTTP 客户端,并且根据我的需要,最有效的方法似乎是实现 HTTP 管道(根据RFC2616)。
顺便说一句,我想管道 POST。(另外,我不是在谈论多路复用。我在谈论流水线,即在接收任何响应批处理 HTTP 请求之前通过一个连接进行许多请求)
我找不到明确声明它支持流水线的第三方库。但是我可以使用例如Apache HTTPCore来构建这样的客户端,或者如果我必须自己构建它。
我的问题是这是否是个好主意。我没有找到任何权威参考资料表明 HTTP 流水线不仅仅是一种理论模型,而是由 HTTP 服务器正确实现的。此外,所有支持流水线的浏览器都默认关闭此功能。
所以,我应该尝试实现这样的客户端,否则我会因为服务器的实现(或代理)而遇到很多麻烦。是否有任何参考可以提供这些指导?
如果这是一个坏主意,那么提高效率的替代编程模型是什么?单独的 TCP 连接?