在Apache CXF中配置Http连接池

问题描述 投票:2回答:1

我正在使用Apache camel 2.16.0和CXF 3.1.2

我如何为所有http调用配置连接池(在cxf.xml中,以便它可以重用现有的http连接,而不是每次都创建一个新连接?

我也可以为每个请求看到TIME_WAIT,CLOSE_WAIT和FIN_WAIT2,如何关闭空闲连接?

<bean id="http" class="org.apache.camel.component.http.HttpComponent">
        <property name="camelContext" ref="camel_context" />
        <property name="httpConnectionManager" ref="myHttpConnectionManager" />
    </bean>

    <bean id="myHttpConnectionManager"
        class="org.apache.commons.httpclient.MultiThreadedHttpConnectionManager">

        <property name="params" ref="myHttpConnectionManagerParams" />
    </bean>

    <bean id="myHttpConnectionManagerParams"
        class="org.apache.commons.httpclient.params.HttpConnectionManagerParams">
        <property name="connectionTimeout" value="20000" />
        <property name="soTimeout" value="20000" />
        <property name="defaultMaxConnectionsPerHost" value="5" />
        <property name="maxTotalConnections" value="10" />
    </bean>

似乎maxTotalConnections无效!maxTotalConnections是10,但是当我进行负载测试时,我可以看到超过230个已建立的连接。所有属性(例如connectionTimeout,soTimeout,defaultMaxConnectionsPerHost)都将被忽略!

任何帮助,感激..

spring web-services apache-camel cxf
1个回答
0
投票

@@ Nitesh Jain,Java - exact meaning http.maxConnections-这可能是您看到10个以上HttpConnections的原因,即使您已将10个配置为maxConnections的值。

© www.soinside.com 2019 - 2024. All rights reserved.