users@glassfish.java.net

RE: Glassfish performance and crashes/lockups

From: Vincent DeschĂȘnes <vdeschenes_at_stelvio.com>
Date: Mon, 7 Dec 2009 13:08:14 -0500

Your application should not try to do all the job as it come.
You should queue the work and have background thread doing the long processing (convert, saves to alfresco, ect).

This way you accept new request faster to prevent to fill your tcp backlog (wich give timeout exception).
Even with the fastest server there is a limit of peak activity you can handle.


Vincent Deschenes

-----Original Message-----
From: glassfish_at_javadesktop.org [mailto:glassfish_at_javadesktop.org]
Sent: Monday, December 07, 2009 12:19 PM
To: users_at_glassfish.dev.java.net
Subject: Glassfish performance and crashes/lockups

I hope someone has some advice for me because I am at a standstill.

Without going into too much detail, Im helping develop a faxing application. Outbound faxes are accepted in different ways (i.e. email) and passed to the glassfish application which processes the fax (converts, saves to alfresco, ect) and then passes the fax on via email to a faxing server. The problem is if Glassfish is processing over 300 to 400 of the Faxe messages I start gettting lots of Unexpected End Of file from server errors as well as socket timeout errors and sometimes http 500 errors . These happen all over the place in web service calls and not always in the same locations.

Now I have read quite a bit on tuning Glassfish and messed with the different binding and thread settings for weeks but now I am at a loss at what to set these too.

The main settings I am adjusting are the Http, Bpel, Jms binding thread settings and http service settings.

If you read up on configuring Items such as the Bpel Binding it says to set the number of threads equal to the number of CPU's but if I do this I cant get more than 100 or so messages to be processed - as a last resort I tried setting everything to some absurd number (like everything thread setting over 1000) which is rediculous however I increased the amount of messages I can handle from something like 200 to around 500 ...we are using a 64bit machine with something like 16GB or ram so I can get away with it however this is way too hacky for me.

has anyone had any good experience setting these values?

After each fax is processed by the glassfish project it ends up at a final Pick/Alarm activity which waits up to an hour for a notification to come back to see if the fax was successful or it times out on alarm Im wondering if each fax as it waits in the pick activity may be eating up connections/threads??
[Message sent by forum member 'cornwellsb' ]

http://forums.java.net/jive/thread.jspa?messageID=375191

---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe_at_glassfish.dev.java.net
For additional commands, e-mail: users-help_at_glassfish.dev.java.net