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

Glaucio Melo commented on ARTEMIS-312:
--------------------------------------

Hi Justin, thanks for your comments. Yes, I did read this documentation link, 
right after we found what was happening with our platform :)

Despite we are currently on hold due to a few other reasons, with this 
globalPools as true as default value, our platform was up and running just for 
a few minutes before crash (around 8 minutes). Also, due to time-management 
perspective, unfortunately this behaviour had caused a biased impression about 
Artemis at all. 

I know most of java frameworks need to be opened for configuration, but my 
point here isn't exactly on *where to change* or *where to read about*, but let 
as default a configuration which gives a room for dangerous consequences.

Nevertheless, I'm pretty sure that's not everybody that would be available to 
read all the documentation and details (and I spent a lot of time doing that), 
and I know there is a disclaimer from my part on not trying harder on make it 
work properly - but in my vision, set a wide-opened-unrealistic configuration 
as default is error-prone for any framework which has intent to be prepared to 
go in production.

Thanks!

Glaucio

> Artemis clients use by default an unbounded global thread pool
> --------------------------------------------------------------
>
>                 Key: ARTEMIS-312
>                 URL: https://issues.apache.org/jira/browse/ARTEMIS-312
>             Project: ActiveMQ Artemis
>          Issue Type: Bug
>          Components: Broker
>    Affects Versions: 1.1.0
>            Reporter: Jeff Mesnil
>            Assignee: Justin Bertram
>
> While investigating some performance issues, we noticed that Artemis clients 
> (including MDBs) use by default a "global" pool by creating a cached thread 
> pool with 0 core pool size, Integer.MAX_VALUE max size and 60s keep alive.
> This default global pool looks misconfigured. If a Artemis clients has a lot 
> of activity it is actually possible that threads are deleted from the pool 
> and added back.
> Related to this, Artemis defines a threadPoolMaxSize attribute if the client 
> is not using a global pool. But the property does not seem to be well name.
> If the Artemis client is using a "non-global" pool, this property is used to 
> create a newFixedThreadPool. So this property defines the actual size of the 
> pool, not a max size.
> As a comparison, the "global" scheduled thread is instantiating with a 5 core 
> pool size.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to