<html><head></head><body style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space; "><a href="https://jira.jboss.org/browse/ISPN-730">https://jira.jboss.org/browse/ISPN-730</a><div><br></div><div><a href="https://jira.jboss.org/browse/ISPN-730"></a><br><div><div>On 25 Oct 2010, at 12:22, Mircea Markus wrote:</div><br class="Apple-interchange-newline"><blockquote type="cite"><div><br>On 25 Oct 2010, at 11:58, Manik Surtani wrote:<br><br><blockquote type="cite"><br></blockquote><blockquote type="cite">On 25 Oct 2010, at 11:46, Mircea Markus wrote:<br></blockquote><blockquote type="cite"><br></blockquote><blockquote type="cite"><blockquote type="cite"><br></blockquote></blockquote><blockquote type="cite"><blockquote type="cite">On 25 Oct 2010, at 09:56, Galder Zamarreņo wrote:<br></blockquote></blockquote><blockquote type="cite"><blockquote type="cite"><br></blockquote></blockquote><blockquote type="cite"><blockquote type="cite"><blockquote type="cite"><br></blockquote></blockquote></blockquote><blockquote type="cite"><blockquote type="cite"><blockquote type="cite">On Oct 24, 2010, at 10:41 PM, Vladimir Blagojevic wrote:<br></blockquote></blockquote></blockquote><blockquote type="cite"><blockquote type="cite"><blockquote type="cite"><br></blockquote></blockquote></blockquote><blockquote type="cite"><blockquote type="cite"><blockquote type="cite"><blockquote type="cite">User on a forum complained seeing eviction thread per created cache [1]. Although global configuration settings are shared amongst all caches created in CacheManager each created cache gets a fresh copy of these global elements?! Each created cache therefore indeed gets a new eviction executor service with one running thread. Does that mean that by default we also create one async transport executor per cache with 25 threads spinning? <br></blockquote></blockquote></blockquote></blockquote><blockquote type="cite"><blockquote type="cite"><blockquote type="cite"><blockquote type="cite"><br></blockquote></blockquote></blockquote></blockquote><blockquote type="cite"><blockquote type="cite"><blockquote type="cite"><blockquote type="cite">If so, we should tell users that running more than two dozen caches per CacheManager is going to impact the system significantly.<br></blockquote></blockquote></blockquote></blockquote><blockquote type="cite"><blockquote type="cite"><blockquote type="cite"><blockquote type="cite"><br></blockquote></blockquote></blockquote></blockquote><blockquote type="cite"><blockquote type="cite"><blockquote type="cite"><blockquote type="cite">[1] <a href="http://community.jboss.org/thread/157913">http://community.jboss.org/thread/157913</a> <br></blockquote></blockquote></blockquote></blockquote><blockquote type="cite"><blockquote type="cite"><blockquote type="cite"><br></blockquote></blockquote></blockquote><blockquote type="cite"><blockquote type="cite"><blockquote type="cite">This is not down to the user. It's the 2LC case where there's a cache per each entity/collection type. So, if you have a lot of entities/collections in your case, you'll get this effect.<br></blockquote></blockquote></blockquote><blockquote type="cite"><blockquote type="cite"><blockquote type="cite"><br></blockquote></blockquote></blockquote><blockquote type="cite"><blockquote type="cite"><blockquote type="cite">Expiration is set on per cache level, but maybe we need a more clever way for cache manager to manager expiration when two or more caches shared the same expiration settings. Or more simply, manage expiration at the cache manager level.<br></blockquote></blockquote></blockquote><blockquote type="cite"><blockquote type="cite">Expiration runs from eviction thread. It is possible to share the same eviction thread between multiple caches by writing a custom ScheduledExecutorFactory and specify it in the global evictionScheduledExecutor. &nbsp;<br></blockquote></blockquote><blockquote type="cite"><br></blockquote><blockquote type="cite">Hmm, shouldn't this be the default? &nbsp;:/<br></blockquote><blockquote type="cite"><br></blockquote><blockquote type="cite">It is true that the global component is a singleton, in this case the global component is the DefaultExecutorFactory.<br></blockquote><blockquote type="cite"><br></blockquote><blockquote type="cite"><a href="http://fisheye.jboss.org/browse/Infinispan/branches/4.2.x/core/src/main/java/org/infinispan/executors/DefaultExecutorFactory.java?r=1312#l19">http://fisheye.jboss.org/browse/Infinispan/branches/4.2.x/core/src/main/java/org/infinispan/executors/DefaultExecutorFactory.java?r=1312#l19</a><br></blockquote><blockquote type="cite"><br></blockquote><blockquote type="cite">But the factory creates a *new* executor each time it is asked for one. &nbsp;<br></blockquote><blockquote type="cite"><br></blockquote><blockquote type="cite">Perhaps we need a DefaultSharedExecutorFactory, which should be the *real* default?<br></blockquote>+1 adding &nbsp;DefaultSharedExecutorFactory to the code base so that users can use it<br>I think it should be the default one for async notifications where we 25 threads per cache. <br><blockquote type="cite"><br></blockquote><blockquote type="cite">Cheers<br></blockquote><blockquote type="cite">Manik <br></blockquote><blockquote type="cite">--<br></blockquote><blockquote type="cite">Manik Surtani<br></blockquote><blockquote type="cite"><a href="mailto:manik@jboss.org">manik@jboss.org</a><br></blockquote><blockquote type="cite">Lead, Infinispan<br></blockquote><blockquote type="cite">Lead, JBoss Cache<br></blockquote><blockquote type="cite"><a href="http://www.infinispan.org">http://www.infinispan.org</a><br></blockquote><blockquote type="cite"><a href="http://www.jbosscache.org">http://www.jbosscache.org</a><br></blockquote><blockquote type="cite"><br></blockquote><blockquote type="cite"><br></blockquote><blockquote type="cite"><br></blockquote><blockquote type="cite"><br></blockquote><blockquote type="cite"><br></blockquote><blockquote type="cite">_______________________________________________<br></blockquote><blockquote type="cite">infinispan-dev mailing list<br></blockquote><blockquote type="cite"><a href="mailto:infinispan-dev@lists.jboss.org">infinispan-dev@lists.jboss.org</a><br></blockquote><blockquote type="cite"><a href="https://lists.jboss.org/mailman/listinfo/infinispan-dev">https://lists.jboss.org/mailman/listinfo/infinispan-dev</a><br></blockquote><br><br>_______________________________________________<br>infinispan-dev mailing list<br><a href="mailto:infinispan-dev@lists.jboss.org">infinispan-dev@lists.jboss.org</a><br>https://lists.jboss.org/mailman/listinfo/infinispan-dev<br></div></blockquote></div><br><div>
<span class="Apple-style-span" style="font-size: 12px; "><div style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space; "><div>--</div><div>Manik Surtani</div><div><a href="mailto:manik@jboss.org">manik@jboss.org</a></div><div>Lead, Infinispan</div><div>Lead, JBoss Cache</div><div><a href="http://www.infinispan.org">http://www.infinispan.org</a></div><div><a href="http://www.jbosscache.org">http://www.jbosscache.org</a></div><div><br></div></div></span><br class="Apple-interchange-newline"><br class="Apple-interchange-newline">
</div>
<br></div></body></html>