You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@airavata.apache.org by la...@apache.org on 2012/01/31 20:30:10 UTC
svn commit: r1238757 - in
/incubator/airavata/trunk/modules/ws-messenger/client/src/main/java/org/apache/airavata/wsmg/msgbox/client:
CreateMsgBox.java DestroyMsgBox.java StoreMessage.java TakeMessages.java
Author: lahiru
Date: Tue Jan 31 19:30:10 2012
New Revision: 1238757
URL: http://svn.apache.org/viewvc?rev=1238757&view=rev
Log:
adding multiThreadedHttpConnectionManger for MsgBox Client calls.
Modified:
incubator/airavata/trunk/modules/ws-messenger/client/src/main/java/org/apache/airavata/wsmg/msgbox/client/CreateMsgBox.java
incubator/airavata/trunk/modules/ws-messenger/client/src/main/java/org/apache/airavata/wsmg/msgbox/client/DestroyMsgBox.java
incubator/airavata/trunk/modules/ws-messenger/client/src/main/java/org/apache/airavata/wsmg/msgbox/client/StoreMessage.java
incubator/airavata/trunk/modules/ws-messenger/client/src/main/java/org/apache/airavata/wsmg/msgbox/client/TakeMessages.java
Modified: incubator/airavata/trunk/modules/ws-messenger/client/src/main/java/org/apache/airavata/wsmg/msgbox/client/CreateMsgBox.java
URL: http://svn.apache.org/viewvc/incubator/airavata/trunk/modules/ws-messenger/client/src/main/java/org/apache/airavata/wsmg/msgbox/client/CreateMsgBox.java?rev=1238757&r1=1238756&r2=1238757&view=diff
==============================================================================
--- incubator/airavata/trunk/modules/ws-messenger/client/src/main/java/org/apache/airavata/wsmg/msgbox/client/CreateMsgBox.java (original)
+++ incubator/airavata/trunk/modules/ws-messenger/client/src/main/java/org/apache/airavata/wsmg/msgbox/client/CreateMsgBox.java Tue Jan 31 19:30:10 2012
@@ -35,6 +35,11 @@ import org.apache.axis2.AxisFault;
import org.apache.axis2.addressing.EndpointReference;
import org.apache.axis2.client.Options;
import org.apache.axis2.client.ServiceClient;
+import org.apache.axis2.context.ConfigurationContext;
+import org.apache.axis2.transport.http.HTTPConstants;
+import org.apache.commons.httpclient.HostConfiguration;
+import org.apache.commons.httpclient.HttpClient;
+import org.apache.commons.httpclient.MultiThreadedHttpConnectionManager;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
@@ -101,17 +106,30 @@ public class CreateMsgBox {
opts.setAction(NameSpaceConstants.MSG_BOX.getNamespaceURI() + "/" + "createMsgBox");
opts.setTimeOutInMilliSeconds(getTimeoutInMilliSeconds());
- ServiceClient client = new ServiceClient();
+ ServiceClient _serviceClient = new ServiceClient();
+
+ MultiThreadedHttpConnectionManager httpConnectionManager = new MultiThreadedHttpConnectionManager();
+ httpConnectionManager.getParams().setMaxTotalConnections(10000000);
+ httpConnectionManager.getParams().setMaxConnectionsPerHost(HostConfiguration.ANY_HOST_CONFIGURATION, 100);
+ httpConnectionManager.getParams().setDefaultMaxConnectionsPerHost(200);
+ HttpClient httpClient = new HttpClient(httpConnectionManager);
+ ConfigurationContext configurationContext = _serviceClient.getServiceContext().getConfigurationContext();
+
+ configurationContext.setProperty(HTTPConstants.REUSE_HTTP_CLIENT, true);
+ configurationContext.setProperty(HTTPConstants.CACHED_HTTP_CLIENT, httpClient);
+ configurationContext.setProperty(HTTPConstants.AUTO_RELEASE_CONNECTION, true);
+ _serviceClient.getOptions().setTo(new org.apache.axis2.addressing.EndpointReference(msgBoxEndPointReference));
try {
- client.engageModule(WsmgCommonConstants.AXIS_MODULE_NAME_ADDRESSING);
+ _serviceClient.engageModule(WsmgCommonConstants.AXIS_MODULE_NAME_ADDRESSING);
if (logger.isDebugEnabled())
logger.debug("Addressing module engaged");
} catch (AxisFault e) {
if (logger.isDebugEnabled())
logger.debug("Addressing module not engaged :" + e);
}
- client.setOptions(opts);
- return client;
+
+ _serviceClient.setOptions(opts);
+ return _serviceClient;
}
}
Modified: incubator/airavata/trunk/modules/ws-messenger/client/src/main/java/org/apache/airavata/wsmg/msgbox/client/DestroyMsgBox.java
URL: http://svn.apache.org/viewvc/incubator/airavata/trunk/modules/ws-messenger/client/src/main/java/org/apache/airavata/wsmg/msgbox/client/DestroyMsgBox.java?rev=1238757&r1=1238756&r2=1238757&view=diff
==============================================================================
--- incubator/airavata/trunk/modules/ws-messenger/client/src/main/java/org/apache/airavata/wsmg/msgbox/client/DestroyMsgBox.java (original)
+++ incubator/airavata/trunk/modules/ws-messenger/client/src/main/java/org/apache/airavata/wsmg/msgbox/client/DestroyMsgBox.java Tue Jan 31 19:30:10 2012
@@ -31,6 +31,11 @@ import org.apache.axis2.AxisFault;
import org.apache.axis2.addressing.EndpointReference;
import org.apache.axis2.client.Options;
import org.apache.axis2.client.ServiceClient;
+import org.apache.axis2.context.ConfigurationContext;
+import org.apache.axis2.transport.http.HTTPConstants;
+import org.apache.commons.httpclient.HostConfiguration;
+import org.apache.commons.httpclient.HttpClient;
+import org.apache.commons.httpclient.MultiThreadedHttpConnectionManager;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
@@ -100,12 +105,24 @@ public class DestroyMsgBox {
opts.setTo(msgBoxEndPointReference);
opts.setMessageId(uuid);
opts.setAction(message.getNamespace().getNamespaceURI() + "/" + message.getLocalName());
-
opts.setTimeOutInMilliSeconds(getTimeoutInMilliSeconds());
+ ServiceClient _serviceClient = new ServiceClient();
+
+ MultiThreadedHttpConnectionManager httpConnectionManager = new MultiThreadedHttpConnectionManager();
+ httpConnectionManager.getParams().setMaxTotalConnections(10000);
+ httpConnectionManager.getParams().setMaxConnectionsPerHost(HostConfiguration.ANY_HOST_CONFIGURATION, 100);
+ httpConnectionManager.getParams().setDefaultMaxConnectionsPerHost(200);
+ HttpClient httpClient = new HttpClient(httpConnectionManager);
+
+ ConfigurationContext configurationContext = _serviceClient.getServiceContext().getConfigurationContext();
+ configurationContext.setProperty(HTTPConstants.REUSE_HTTP_CLIENT, true);
+ configurationContext.setProperty(HTTPConstants.CACHED_HTTP_CLIENT, httpClient);
+ configurationContext.setProperty(HTTPConstants.AUTO_RELEASE_CONNECTION, true);
+
+ _serviceClient.getOptions().setTo(new org.apache.axis2.addressing.EndpointReference(msgBoxEndPointReference.getAddress()));
- ServiceClient client = new ServiceClient();
try {
- client.engageModule(WsmgCommonConstants.AXIS_MODULE_NAME_ADDRESSING);
+ _serviceClient.engageModule(WsmgCommonConstants.AXIS_MODULE_NAME_ADDRESSING);
if (logger.isDebugEnabled())
logger.debug("Addressing module engaged");
} catch (AxisFault e) {
@@ -113,7 +130,7 @@ public class DestroyMsgBox {
logger.debug("Addressing module not engaged :" + e);
}
- client.setOptions(opts);
- return client;
+ _serviceClient.setOptions(opts);
+ return _serviceClient;
}
}
Modified: incubator/airavata/trunk/modules/ws-messenger/client/src/main/java/org/apache/airavata/wsmg/msgbox/client/StoreMessage.java
URL: http://svn.apache.org/viewvc/incubator/airavata/trunk/modules/ws-messenger/client/src/main/java/org/apache/airavata/wsmg/msgbox/client/StoreMessage.java?rev=1238757&r1=1238756&r2=1238757&view=diff
==============================================================================
--- incubator/airavata/trunk/modules/ws-messenger/client/src/main/java/org/apache/airavata/wsmg/msgbox/client/StoreMessage.java (original)
+++ incubator/airavata/trunk/modules/ws-messenger/client/src/main/java/org/apache/airavata/wsmg/msgbox/client/StoreMessage.java Tue Jan 31 19:30:10 2012
@@ -29,6 +29,11 @@ import org.apache.axis2.AxisFault;
import org.apache.axis2.addressing.EndpointReference;
import org.apache.axis2.client.Options;
import org.apache.axis2.client.ServiceClient;
+import org.apache.axis2.context.ConfigurationContext;
+import org.apache.axis2.transport.http.HTTPConstants;
+import org.apache.commons.httpclient.HostConfiguration;
+import org.apache.commons.httpclient.HttpClient;
+import org.apache.commons.httpclient.MultiThreadedHttpConnectionManager;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
@@ -90,16 +95,29 @@ public class StoreMessage {
opts.setAction(NameSpaceConstants.MSG_BOX.getNamespaceURI() + "/" + "storeMessages");
opts.setTimeOutInMilliSeconds(getTimeoutInMilliSeconds());
- ServiceClient client = new ServiceClient();
+ ServiceClient _serviceClient = new ServiceClient();
+
+ MultiThreadedHttpConnectionManager httpConnectionManager = new MultiThreadedHttpConnectionManager();
+ httpConnectionManager.getParams().setMaxTotalConnections(10000);
+ httpConnectionManager.getParams().setMaxConnectionsPerHost(HostConfiguration.ANY_HOST_CONFIGURATION, 100);
+ httpConnectionManager.getParams().setDefaultMaxConnectionsPerHost(200);
+ HttpClient httpClient = new HttpClient(httpConnectionManager);
+ ConfigurationContext configurationContext = _serviceClient.getServiceContext().getConfigurationContext();
+
+ configurationContext.setProperty(HTTPConstants.REUSE_HTTP_CLIENT, true);
+ configurationContext.setProperty(HTTPConstants.CACHED_HTTP_CLIENT, httpClient);
+ configurationContext.setProperty(HTTPConstants.AUTO_RELEASE_CONNECTION, true);
+ _serviceClient.getOptions().setTo(new org.apache.axis2.addressing.EndpointReference(msgBoxEndPointReference.getAddress()));
try {
- client.engageModule(WsmgCommonConstants.AXIS_MODULE_NAME_ADDRESSING);
+ _serviceClient.engageModule(WsmgCommonConstants.AXIS_MODULE_NAME_ADDRESSING);
if (logger.isDebugEnabled())
logger.debug("Addressing module engaged");
} catch (AxisFault e) {
if (logger.isDebugEnabled())
logger.debug("Addressing module not engaged :" + e);
}
- client.setOptions(opts);
- return client;
+
+ _serviceClient.setOptions(opts);
+ return _serviceClient;
}
}
Modified: incubator/airavata/trunk/modules/ws-messenger/client/src/main/java/org/apache/airavata/wsmg/msgbox/client/TakeMessages.java
URL: http://svn.apache.org/viewvc/incubator/airavata/trunk/modules/ws-messenger/client/src/main/java/org/apache/airavata/wsmg/msgbox/client/TakeMessages.java?rev=1238757&r1=1238756&r2=1238757&view=diff
==============================================================================
--- incubator/airavata/trunk/modules/ws-messenger/client/src/main/java/org/apache/airavata/wsmg/msgbox/client/TakeMessages.java (original)
+++ incubator/airavata/trunk/modules/ws-messenger/client/src/main/java/org/apache/airavata/wsmg/msgbox/client/TakeMessages.java Tue Jan 31 19:30:10 2012
@@ -33,6 +33,11 @@ import org.apache.axis2.AxisFault;
import org.apache.axis2.addressing.EndpointReference;
import org.apache.axis2.client.Options;
import org.apache.axis2.client.ServiceClient;
+import org.apache.axis2.context.ConfigurationContext;
+import org.apache.axis2.transport.http.HTTPConstants;
+import org.apache.commons.httpclient.HostConfiguration;
+import org.apache.commons.httpclient.HttpClient;
+import org.apache.commons.httpclient.MultiThreadedHttpConnectionManager;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
@@ -104,11 +109,22 @@ public class TakeMessages {
opts.setTo(msgBoxEndPointReference);
opts.setMessageId(uuid);
opts.setAction(message.getNamespace().getNamespaceURI() + "/" + message.getLocalName());
-
opts.setTimeOutInMilliSeconds(getTimeoutInMilliSeconds());
- ServiceClient client = new ServiceClient();
+ ServiceClient _serviceClient = new ServiceClient();
+
+ MultiThreadedHttpConnectionManager httpConnectionManager = new MultiThreadedHttpConnectionManager();
+ httpConnectionManager.getParams().setMaxTotalConnections(10000);
+ httpConnectionManager.getParams().setMaxConnectionsPerHost(HostConfiguration.ANY_HOST_CONFIGURATION, 100);
+ httpConnectionManager.getParams().setDefaultMaxConnectionsPerHost(200);
+ HttpClient httpClient = new HttpClient(httpConnectionManager);
+ ConfigurationContext configurationContext = _serviceClient.getServiceContext().getConfigurationContext();
+
+ configurationContext.setProperty(HTTPConstants.REUSE_HTTP_CLIENT, true);
+ configurationContext.setProperty(HTTPConstants.CACHED_HTTP_CLIENT, httpClient);
+ configurationContext.setProperty(HTTPConstants.AUTO_RELEASE_CONNECTION, true);
+ _serviceClient.getOptions().setTo(new org.apache.axis2.addressing.EndpointReference(msgBoxEndPointReference.getAddress()));
try {
- client.engageModule(WsmgCommonConstants.AXIS_MODULE_NAME_ADDRESSING);
+ _serviceClient.engageModule(WsmgCommonConstants.AXIS_MODULE_NAME_ADDRESSING);
if (logger.isDebugEnabled())
logger.debug("Addressing module engaged");
} catch (AxisFault e) {
@@ -116,7 +132,7 @@ public class TakeMessages {
logger.debug("Addressing module not engaged :" + e);
}
- client.setOptions(opts);
- return client;
+ _serviceClient.setOptions(opts);
+ return _serviceClient;
}
}