users@glassfish.java.net

Re: Performance Tuning - Single request brings server to its knees

From: Scott Oaks <Scott.Oaks_at_Sun.COM>
Date: Tue, 09 Feb 2010 17:40:23 -0500

I would add that you need to increase the connection pol size in
conjunction with the thread pool size; each thread will need a
connection to the database.

If you database in turn can't handle all the requests from glassfish,
then tuning glassfish won't help: you'll just add more requests to the
database, but all the requests will have to wait, and while they are
waiting those threads can't do anything else. So you also need to look
into your database and why those requests are taking so long.

-Scott

Dhiru Pandey wrote:
> Hi,
>
> Its hard to guess where the issue would be with out more data like CPU
> profiles, jstack dumps for GlassFish.
>
> I would start with looking at the CPU load on then machine when these
> bulk uploads/deletes are done. If your CPUs are 100 % pegged at that
> time then you are running out of processing resources on this machine
> - you should look at moving either the database or GlassFish to its
> own dedicated machine.
>
> If the CPUs utilization is not 100%, try to increase the number of
> worker threads on the HTTP path - by default this is set to grow
> maximally to 5. Try bumping this up. You can do this by using the
> Admin Console and by traversing to the following node of the Tree
> (left pane) :
> CommonTask->ThreadPools->http-thread-pool
>
> and then changing the Max. Thread Pool Size to some number greater
> than 5 (like 10 or 20). You will need to restart the server for these
> settings to take effect.
>
> (I am assuming here that the all the users and their interaction with
> the application including the bulk update/delete is done using the web)
>
> Hope this helps. Good luck
>
> glassfish_at_javadesktop.org wrote:
>> First off, I'm in the deep end here. I fully acknowledge the noobness
>> of this request but I've looked at a lot of tuning guides and have
>> tried various settings in the admin console all to no avail so I
>> would really appreciate some assistance.
>>
>> [b]The problem:[/b]
>> We have an application deployed that runs great if you have one user
>> on it problem is that we kinda want a few more then that. When the
>> administrators do a bulk upload/delete which is fairly heavy in the
>> number of database transactions it completely hangs for all users and
>> badly. Its almost like there is only one thread and until it's
>> finished nothing else can happen. I'm currently staring at two tabs
>> (one admin/ one just to login) in firefox which have been spinning
>> for the last 10 minutes!
>>
>> [b]Our Setup[b]
>> Server:
>> 3.2 ghz Intel XEON 2 processors
>> 8GB RAM
>> Windows 64 bit
>>
>> Glassfish: v2.1
>> DB: MSSQL
>> Other: Using Toplink and JSP
>>
>> [b]Question[b]
>> How do I go about narrowing down what the problem is? Like I've said
>> I have tried the tuning tips on several pages but they seem to have
>> no effect. A lot of them refer to using the built in monitoring in
>> the admin panel but I have to be honest I look at the results and
>> have no idea how to work with the results.
>>
>> Thanks for your time. Please let me know if there is anything else
>> you need.
>> [Message sent by forum member 'scomley' (register_at_comley.org)]
>>
>> http://forums.java.net/jive/thread.jspa?messageID=385608
>>
>> ---------------------------------------------------------------------
>> To unsubscribe, e-mail: users-unsubscribe_at_glassfish.dev.java.net
>> For additional commands, e-mail: users-help_at_glassfish.dev.java.net
>>
>>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: users-unsubscribe_at_glassfish.dev.java.net
> For additional commands, e-mail: users-help_at_glassfish.dev.java.net
>