views:

113

answers:

1

I need a point to start from. I read from Yakov Fain about a performance break through with jetty and blazeds.

I realized that we already have some trouble with about 1200 concurrent users, some consumers dont get messages and cpu is under heavy fire.

Did somebody already tried this Nio with BlazeDS? Did this work with Tomcat too? Where to start and what do I need to improve messaging performance?

Thank you so much!!!

+1  A: 

I would suggest before you go down the road of customizing BlazeDS to support NIO that you profile your application and verify were the hotspots are. Have you verified that it is the BlazeDS networking stack that is causing lost messages? Have you profiled your code to see if there are optimizations that can be done to better optimize message handling?

Some actually contend the Java NIO doesn't actually improve through-put - http://paultyma.blogspot.com/2008/03/writing-java-multithreaded-servers.html

I say this because BlazeDS does not support NIO only the commercial version of the server does - LCDS. What LCDS does actually set-up it's own NIO sockets and manages requests through these connections, bypassing the standard servlet stack. To get NIO support Yakov said "To support thousands concurrent users you also need to customize networking layer of BlazeDS" I would be willing to guess this customized networking layer is not production ready and is more of a prototype because it is extremely difficult to reliably customize the networking layer of any server.

Ryan K
It's not about throughput, but rather number of concurrent connections.
You are right, but hopefully it will be standard and supported in near future...
Frank Szilinski