Details
-
Improvement
-
Status: Resolved
-
Major
-
Resolution: Fixed
-
4.3.2
Description
AbstractNIOConnPool use a ReentrantLock for lease and release connection.
We have noticed important contention when we try to use hundreds of connexions to the same host, the lock is to vast.
I managed to rework a part of the code so there is no more use of a ReentrantLock, but use of ConcurrentHashMap and so on.
The unit tests are ok and the load tests we have made on the patch version are about 40 % faster under heavy load
Please find attached patch file againt http-nio 4.3.2 and the modified sources files of http-nio 4.3.2
Attachments
Attachments
Issue Links
- is duplicated by
-
HTTPCLIENT-1809 Thread contention in PoolingHttpClientConnectionManager
- Resolved
- links to