In weblogic 7.0 is there a way to monitor the number of threads that are getting processed and available threads?
Our applicaton is undergoing serious performance issues, We need to configure our thread count to an optimum values based on the behavior of the application.
As most of the pages in our applications is procesed int he server side its better to increase teh thread counts. Currently we have configured to 50 , we are planning to increase to 100.Please advice will there be any issues on increasing the thread count ? Checked the weblogic 7.0 e-docs, they suggested to increase the thread count according tot he application requirement.
If anyone has configured thread count as 100 , please share your experience.
Hareesh Ram Chanchali
Joined: Jan 31, 2005
I am not sure about 7.0 but I worked with 8.1. There are couple of thing you need to do.
First select the server > monitoring > then monitor all the queues and then choose default queue and monitor all the threads and see what exactly happenning with the data you can find there.
next, through access logs or by any other analytic mechanism if available try finding the maximum number of users at given instant of time say 2 minutes period.
now this count should be less than or equal to number of managed servers multiplied by number of execute threads per server.( unless you are creating user threads explicitly)
If this calculations holds good then you need to see why threads are not sufficient? sometime some of the threads are not prpoerly released back and hence they will be consuming your execute queue.
Also take thread dumps and analyse which threads are taking more time. Dont increase the threads just like that even though WLS advises. Also you can think of putting dynamic expansion of thread count but it needs some over head too!
Hareesh Ram Chanchali
SCJP 5.0, IBM Certified Solution Designer
Joined: Nov 01, 2007
Thanks for the reply.
Have been monitoring the queu, throughput and memory usage. There was a spike in the throughput whenever i recieve exceptions or whenever the user experience 500 Internal server error in the UI. ALso at some times application throws "weblogic.transaction.internal.TimedOutException: Transaction timed out after 31 seconds" . Am trying to configure the timeout attribute. I am usin regular datasource (not the transactional ds), so what would be the default timeout seconds associated with the db connection.
Tryinkg to tune up the following attribute. Please provide your comment on these:
Post Timeout Secs - 30
Duration - 30
Https Duration - 60
Above values are the default valeus for these atttributes in both production and dev environments, please suggest if there is any production specific value.