How would you configure NIO for MDB? I do plan on stress testing, but I want to make sure I understand the configuration. Is there a 1 to 1 relationship with Default\ JMS\ Resource\ Adapter.ThreadPoolSize and Default\ MDB\ Container.InstanceLimit?
On Mon, Sep 28, 2015 at 10:29 AM, Romain Manni-Bucau <[email protected]> wrote: > Le 28 sept. 2015 07:24, "Steve Goldsmith" <[email protected]> a écrit : > > > > OK, yea, it's not real clear where configuration preference go (i.e. > > system.properties or tomee.xml). My goal is to have 100 messages > processing > > simultaneously for each MDB. I could have 5 or 10 distinct beans that > need > > to handle up to 100 messages each simultaneously. In case of 10 beans > with > > 100 simultaneously messages (1000 total) would I have to use: > > > > Default\ JMS\ Resource\ Adapter.ThreadPoolSize=1000 > > Default\ MDB\ Container.InstanceLimit=1000 > > > > Is there any implications to this? I have a scenario where I could have a > > onMessage last up to 30 seconds and we have tens of thousands of users. I > > need it to scale to a lot of MDBs. Are there OS tuning considerations > based > > on the number of active threads? > > > > Standard OS config are important like ulimit. 1000 threads sounds a lot. > Also using a delegation pattern nio transport and mdb calling a singleton > or app scoped cdi bean you should be able to scale more easily. > > Only way to ensure it is to bench it on your actual machine - even if > theory is good better to check it actually works cause bottleneck can be > totally different. > > > On Sun, Sep 27, 2015 at 9:53 PM, Leonardo K. Shikida <[email protected]> > > wrote: > > > > > sounds correct for me > > > > > > if you want to run tests and see things clearer, you probably can try > this > > > in your MDB instead > > > > > > @ActivationConfigProperty(propertyName = > "maxMessagesPerSessions", > > > propertyValue = "1") > > > > > > so each MDB will only fetch 1 message at a time > > > > > > I am not sure if this parameter is related, but it's another one you > can > > > try, if your configuration is not working as expected. > > > > > > <Resource id="MyJmsConnectionFactory" > > > type="javax.jms.ConnectionFactory"> > > > ResourceAdapter = Default\ JMS\ Resource\ Adapter > > > PoolMaxSize = 100 > > > </Resource> > > > > > > > > > > > > > > > [] > > > > > > Leo > > > > > > On Tue, Sep 22, 2015 at 5:15 PM, sgjava <[email protected]> wrote: > > > > > > > If I have multiple MDBs that I want to scale to 100 beans > simultaneously, > > > > how > > > > would I configure TomEE? Currently I'm using: > > > > > > > > system.properties: > > > > > > > > Default\ JMS\ Resource\ Adapter.ThreadPoolSize=100 > > > > Default\ MDB\ Container.InstanceLimit=100 > > > > > > > > bean: > > > > > > > > @MessageDriven(activationConfig = { > > > > @ActivationConfigProperty(propertyName = "maxSessions", > propertyValue > > > > = "100"), > > > > @ActivationConfigProperty(propertyName = > "maxMessagesPerSessions", > > > > propertyValue = "100")}) > > > > > > > > But this would only cover 100 simultaneous beans? For instance, say > I > > > have > > > > 10 beans that could have 100 messages active at the same time or 1000 > > > > beans. > > > > How would the configuration look? > > > > > > > > > > > > > > > > -- > > > > View this message in context: > > > > > > > > > http://tomee-openejb.979440.n4.nabble.com/Scaling-MDBs-beyond-default-10-limit-tp4676322.html > > > > Sent from the TomEE Users mailing list archive at Nabble.com. > > > > > > > > > > > > > > > -- > > Steven P. Goldsmith > -- Steven P. Goldsmith
