[ 
https://issues.apache.org/jira/browse/ARTEMIS-3615?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Francesco Nigro updated ARTEMIS-3615:
-------------------------------------
    Description: 
Currently Artemis's Core client is creating a whole new Netty event loop group 
sized by default using 3*available cores, although it serves just a single 
transport connection, requiring no more then a single thread.

Ideally event loop group(s) (and threads) should be shared on the same 
connection factory, allowing many connections to be handled on them (with N:M 
ratio) or each connection should have its own dedicated single threaded event 
loop (that seems a waste really, if a client box have more connections opened 
then available cores).
The most relevant problem of the current approach is that is going to waste 
native resources while both creating useless native threads and selector(s) 
that won't ever be used. In addition, setting `nioRemotingThreads`just won't 
have any effect.

  was:
Currently Artemis's Core client is creating a whole new Netty event loop group 
sized by default using 3*available cores, although it would serve just a single 
transport connection, that requires just a single thread to be served.

Ideally event loop group(s) (and threads) should be shared on the same 
connection factory, allowing many connections to be handled on them (with N:M 
ratio) or each connection should have its own dedicated single threaded event 
loop (that seems a waste really, if a client box have more connections opened 
then available cores).
The most relevant problem of the current approach is that is going to waste 
native resources while both creating useless native threads and selector(s) 
that won't ever be used. In addition, setting `nioRemotingThreads`just won't 
have any effect.


> Artemis CORE client create a new Netty Event Loop group for each connection
> ---------------------------------------------------------------------------
>
>                 Key: ARTEMIS-3615
>                 URL: https://issues.apache.org/jira/browse/ARTEMIS-3615
>             Project: ActiveMQ Artemis
>          Issue Type: Bug
>            Reporter: Francesco Nigro
>            Assignee: Francesco Nigro
>            Priority: Major
>
> Currently Artemis's Core client is creating a whole new Netty event loop 
> group sized by default using 3*available cores, although it serves just a 
> single transport connection, requiring no more then a single thread.
> Ideally event loop group(s) (and threads) should be shared on the same 
> connection factory, allowing many connections to be handled on them (with N:M 
> ratio) or each connection should have its own dedicated single threaded event 
> loop (that seems a waste really, if a client box have more connections opened 
> then available cores).
> The most relevant problem of the current approach is that is going to waste 
> native resources while both creating useless native threads and selector(s) 
> that won't ever be used. In addition, setting `nioRemotingThreads`just won't 
> have any effect.



--
This message was sent by Atlassian Jira
(v8.20.1#820001)

Reply via email to