You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@hc.apache.org by "Gary Gregory (JIRA)" <ji...@apache.org> on 2018/02/06 05:03:01 UTC

[jira] [Comment Edited] (HTTPCORE-509) AVAIL_PROCS is autoconfigured based on core count

    [ https://issues.apache.org/jira/browse/HTTPCORE-509?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16353353#comment-16353353 ] 

Gary Gregory edited comment on HTTPCORE-509 at 2/6/18 5:02 AM:
---------------------------------------------------------------

Do you mean something like {{java ... -Dorg.apache.http.impl.nio.reactor.IOReactorConfig.ioThreadCount=3 ...}} ?


was (Author: garydgregory):
Do you mean something like {{java ... -Dorg.apache.http.impl.nio.reactor.IOReactorConfig.ioThreadCount=3 ...}}

> 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: Improvement
>          Components: HttpCore NIO
>    Affects Versions: 4.4.9
>            Reporter: Elijah Zupancic
>            Priority: Major
>
> 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: dev-unsubscribe@hc.apache.org
For additional commands, e-mail: dev-help@hc.apache.org