openvstorage / volumedriver

The Open vStorage VolumeDriver is the core of the Open vStorage solution: a high performance distributed block layer. It converts block storage into objects (Storage Container Objects).
Other
37 stars 18 forks source link

Frequent construction + destruction of alba proxy clients #88

Closed redlicha closed 7 years ago

redlicha commented 8 years ago

Observed during testing by log inspection:

2016-08-11 16:24:19 127606 +0200 - cmp02 - 19933/0x00007f07a2ffd700 - volumedriverfs/AlbaProxyClient - 000000000000158d -  info - logMessage: RoraProxy_client(...)
2016-08-11 16:24:19 127891 +0200 - cmp02 - 19933/0x00007f0781ffb700 - volumedriverfs/AlbaProxyClient - 000000000000158e -  info - logMessage: TCPProxy_client(172.19.10.41, 26204)
2016-08-11 16:24:19 128081 +0200 - cmp02 - 19933/0x00007f0781ffb700 - volumedriverfs/AlbaProxyClient - 000000000000158f -  info - logMessage: RoraProxy_client(...)
2016-08-11 16:24:19 129456 +0200 - cmp02 - 19933/0x00007f07a0b2d700 - volumedriverfs/AlbaProxyClient - 0000000000001590 -  info - logMessage: TCPProxy_client(172.19.10.41, 26204)
2016-08-11 16:24:19 129638 +0200 - cmp02 - 19933/0x00007f07a0b2d700 - volumedriverfs/AlbaProxyClient - 0000000000001591 -  info - logMessage: RoraProxy_client(...)
2016-08-11 16:24:19 159970 +0200 - cmp02 - 19933/0x00007f0781ffb700 - volumedriverfs/AlbaProxyClient - 0000000000001592 -  info - logMessage: TCPProxy_client(172.19.10.41, 26204)
2016-08-11 16:24:19 160336 +0200 - cmp02 - 19933/0x00007f0781ffb700 - volumedriverfs/AlbaProxyClient - 0000000000001593 -  info - logMessage: RoraProxy_client(...)
2016-08-11 16:24:19 170961 +0200 - cmp02 - 19933/0x00007f07a2ffd700 - volumedriverfs/AlbaProxyClient - 0000000000001594 -  info - logMessage: TCPProxy_client(172.19.10.41, 26204)
2016-08-11 16:24:19 171192 +0200 - cmp02 - 19933/0x00007f07a2ffd700 - volumedriverfs/AlbaProxyClient - 0000000000001595 -  info - logMessage: RoraProxy_client(...)
2016-08-11 16:24:19 242451 +0200 - cmp02 - 19933/0x00007f07a2ffd700 - volumedriverfs/AlbaProxyClient - 0000000000001596 -  info - logMessage: TCPProxy_client(172.19.10.41, 26204)
2016-08-11 16:24:19 242675 +0200 - cmp02 - 19933/0x00007f07a2ffd700 - volumedriverfs/AlbaProxyClient - 0000000000001597 -  info - logMessage: RoraProxy_client(...)

This can cause a performance degradation and points towards the backend connection pool not working optimally with the default settings.

redlicha commented 8 years ago

The number of connection pools is now configurable and can, together with the total capacity of the pools, be adjusted to the actual hardware / use case. The default is to use a single, global pool which avoids the constant construction / destruction of connections at the expense of being a globally shared resource. Using multiple pools allows to reduce contention but requires fine tuning according to the system.

redlicha commented 7 years ago

Issue has not been reported anymore, reopen if it should surface again.