我使用 servlet 和 Camel Rest DSL 来定义路由。 我没有在我的应用程序中使用 xml 文件。 如何使用 http 组件选项设置 http 组件的最大连接数?
您可以在此页面上阅读相关内容:http://camel.apache.org/http.html。 在下面的示例中,我们将最大连接设置为 5,而不是默认的 2。
<bean id="http" class="org.apache.camel.component.http.HttpComponent">
<property name="camelContext" ref="camel"/>
<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="defaultMaxConnectionsPerHost" value="5"/>
</bean>
然后我们就可以像平常在路线中那样使用它:
<camelContext id="camel" xmlns="http://camel.apache.org/schema/spring" trace="true">
<route>
<from uri="direct:start"/>
<to uri="http://www.google.com"/>
<to uri="mock:result"/>
</route>
</camelContext>
希望能有所帮助。
在最新的camel版本4+中,我们可以如下配置。
<bean id="http" class="org.apache.camel.component.http.HttpComponent">
<property name="connectionsPerRoute" value="${defaultMaxConnectionsPerHostOrRoute}"/>
</bean>