Elijah Zupancic created HTTPCORE-509:
----------------------------------------

             Summary: AVAIL_PROCS is autoconfigured based on core count
                 Key: HTTPCORE-509
                 URL: https://issues.apache.org/jira/browse/HTTPCORE-509
             Project: HttpComponents HttpCore
          Issue Type: Bug
          Components: HttpCore NIO
    Affects Versions: 4.4.9
            Reporter: Elijah Zupancic


In [IOReactorConfig:39|

https://github.com/apache/httpcomponents-core/blob/92c4c6ff64a9a4a0b0677338c03ebd24bfe1b219/httpcore-nio/src/main/java/org/apache/http/impl/nio/reactor/IOReactorConfig.java#L39

], the default value for thread count is based on the detected cores on the 
system. This is usually acceptable. However, if the library is being run within 
a container where the reported number of CPUs does not match the actual amount 
of CPU available, you will see too many threads created in the pool leading to 
performance degradation.

Of course a direct user of this library will be able to set this value to a 
sensible number. However, you will typically see httpcore-nio 4-5 steps down 
the dependency graph and it is being used by other open source components which 
in turn are being used by other components.

I would suggest that we optionally read a system parameter for the value of 
AVAIL_PROCS. If that system parameter is not available, then we use the value 
of Runtime.getRuntime().availableProcessors();



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to