首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Axis2客户端连接问题

Axis2客户端连接问题
EN

Stack Overflow用户
提问于 2016-05-02 13:21:59
回答 1查看 644关注 0票数 0

中间件中有一个java(axis2 1.4.1 client)组件,它使用托管在另一个应用程序中的web服务。我正面临着一些问题。

请找到下面的代码片段

代码语言:javascript
复制
ConfigurationContext configContxt; 
MultiThreadedHttpConnectionManager connxMgr = new MultiThreadedHttpConnectionManager(); 
HttpConnectionManagerParams params = connxMgr.getParams(); 
params.setDefaultMaxConnectionsPerHost(50); 
params.setMaxTotalConnections(50); 
connxMgr .setParams(params); 
HttpClient client = new HttpClient(connxMgr); 
configContxt.setProperty(HTTPConstants.REUSE_HTTP_CLIENT, "True");

请帮助澄清以下问题:

  1. 每当出现新请求时,就会创建一个新连接。这可以通过执行netstat -a|grep <<provider URI>>来确认。

当我们使用axis2 1.3v客户端时,没有创建新的连接,请说明为什么使用axis2 1.4.1创建新连接?

为了防止这种情况,我在ConfigurationContext中将ConfigurationContext属性设置为TRUE。因此,这将重用到服务器的现有(已经建立的)连接。

  1. 我把setDefaultMaxConnectionsPerHostsetMaxTotalConnections设为50。当我通过触发50个请求从SoapUI进行负载测试时,只创建了3个连接。后来,我增加到200个请求,但连接数仍然不超过3。

不确定为什么不能只使用一个连接(因为使用了重用属性),也不知道为什么连接的数量没有随着请求的数量逐渐增加(50个请求有3个连接,200个请求有相同的连接)。

重用属性(HTTPConstants.REUSE_HTTP_CLIENT)将如何表现?

  1. 在代码中使用REUSE_HTTP_CLIENT property时,每个连接可以并发执行多少个事务?
代码语言:javascript
复制
1. Another Issue is that I have set the `closeIdleConnections` with the timeout of 30 secs. **`httpClient.getHttpConnectionManager().closeIdleConnections(30000);`** 

就算是这样也没用。未使用的连接仅在5分钟后才会关闭。我只想知道是否在服务器端设置了一些属性,它覆盖了在客户端设置的30秒?

有人能帮我做上面的事吗?

EN

回答 1

Stack Overflow用户

发布于 2016-05-02 18:56:17

您发布的代码创建了一个HttpClient,但实际上并没有在任何地方使用它。因此,您在连接管理器上应用的任何设置都没有任何效果,这并不奇怪。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/36983513

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档