从Websphere 6.1获取HTTP连接池

时间:2015-01-19 19:55:48

标签: rest http websphere httpclient

所有

我正在从EJB容器(IBM Websphere v6.1)进行REST客户端调用,但无法找到从WAS获取HTTP连接工厂的任何方法。


在WAS 6.1中是否可以这样做?


期望能够使用JNDI访问它,因此可以集中管理连接池配置,套接字超时,连接超时,每个URL的连接等。

如果不是,则使用客户端API,例如HttpClient 4.3。但它有自己的鱼锅:

他们推荐'BasicHttpClientConnectionManager':“这个连接管理器实现应该在EJB容器中使用”。然而,这意味着每个线程有一个连接,在具有许多线程的应用程序中将耗尽O / S的资源。

另一个替代方案'PoolingHttpClientConnectionManager'似乎更适合所需的大部分控件,但在Basic管理器的注释中明确指出不应该在管理的EJB容器中使用Pooling管理器上下文。扫描代码看起来像Pooling管理器使用并发库中的Future但似乎不直接使用Threads。

关于最佳前进方向的任何建议都将受到赞赏 - 一些选项似乎是:

  1. 使用PoolingHttpClientConnectionManager进行测试 - 存在细微问题的风险
  2. 使用'BasicHttpClientConnectionManager'安全播放,但设置了短响应和套接字超时,以大量工厂开销为代价来约束并发套接字的数量。育。
  3. 在WAS 6.1中访问HTTP连接池的其他一些方法。
  4. 其他东西
  5. 对此相当ikky问题的任何建议都是理想的。

    请不要建议升级WAS - 尽管未来版本即WAS商业版似乎有JCA HTTP适配器,而8.5有内置REST客户端。




    请不要发布与MQ / JMS,JDBC连接池或为HTTP以外的EIS设置资源适配器相关的响应。

0 个答案:

没有答案