diff options
author | ZHU ZHU <zhuzhubj@cn.ibm.com> | 2015-07-28 21:47:50 -0500 |
---|---|---|
committer | ZHU ZHU <zhuzhubj@cn.ibm.com> | 2015-07-31 06:54:12 -0500 |
commit | 0fdb00522a1a6e0d9c645ac68c6dc092d6de7088 (patch) | |
tree | 5edc6c65f560384733bddf61e00e60d8e48f674e /oslo_vmware/api.py | |
parent | ddf834189b700acecea1698ff8102b759805f5c3 (diff) | |
download | oslo-vmware-0fdb00522a1a6e0d9c645ac68c6dc092d6de7088.tar.gz |
Allow http connection pool size to be configured
With multiple concurrent VM spawning, the service time from compute
service flow to vcenter to trigger soap requests is getting slower.
As VIM adopt requests module to access the vcenter which have default
http pool size set to 10. This need to be configured to be larger
in scale environment.
Change-Id: Ic9e9a87de378151a66187222231eaafd7a402ac5
Closes-Bug: #1479183
Diffstat (limited to 'oslo_vmware/api.py')
-rw-r--r-- | oslo_vmware/api.py | 11 |
1 files changed, 8 insertions, 3 deletions
diff --git a/oslo_vmware/api.py b/oslo_vmware/api.py index 32d031a..cada825 100644 --- a/oslo_vmware/api.py +++ b/oslo_vmware/api.py @@ -138,7 +138,7 @@ class VMwareAPISession(object): def __init__(self, host, server_username, server_password, api_retry_count, task_poll_interval, scheme='https', create_session=True, wsdl_loc=None, pbm_wsdl_loc=None, - port=443, cacert=None, insecure=True): + port=443, cacert=None, insecure=True, pool_size=10): """Initializes the API session with given parameters. :param host: ESX/VC server IP address or host name @@ -158,6 +158,8 @@ class VMwareAPISession(object): TLS (https) server certificate. :param insecure: Verify HTTPS connections using system certificates, used only if cacert is not specified + :param pool_size: Maximum number of connections in http + connection pool :raises: VimException, VimFaultException, VimAttributeException, VimSessionOverLoadException """ @@ -176,6 +178,7 @@ class VMwareAPISession(object): self._pbm = None self._cacert = cacert self._insecure = insecure + self._pool_size = pool_size if create_session: self._create_session() @@ -192,7 +195,8 @@ class VMwareAPISession(object): port=self._port, wsdl_url=self._vim_wsdl_loc, cacert=self._cacert, - insecure=self._insecure) + insecure=self._insecure, + pool_maxsize=self._pool_size) return self._vim @property @@ -203,7 +207,8 @@ class VMwareAPISession(object): port=self._port, wsdl_url=self._pbm_wsdl_loc, cacert=self._cacert, - insecure=self._insecure) + insecure=self._insecure, + pool_maxsize=self._pool_size) if self._session_id: # To handle the case where pbm property is accessed after # session creation. If pbm property is accessed before session |