[
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)