Hi Chris, Pid & Geroge, Thanks to everyone who replied my mail. I try to answer your questions in one mail.
1. I access the admin interface by manager app. I'd like to have exist command to run and get the report easily, if there is no the command, I will think to use wget | crul. 2. The application with sessions under 60 normally has no issue. But when the session go up to 80 ~ 100, I start to get calls from the customer. It happens many times at random time. Sometime I have to restart it, without any changes, after restart, customer can continuous use it. This performance issue is very annoying. 3. From Chris explanation, looks to change the timeout to 30 minutes will be good idea, since I don't care of the end users to login the system more frequently, I need more stable system. The server has other heavy applications running, CPU load is always up to 10 ~ 20, available physical memory is not too much (<10GB). 4. We are doing the troubleshooting on this application recently and don't find too much can be done. Check with network and DBA team, they all report me there is no issue. Contacted with Developers who maintain the tomcat app codes, they said the code running in their testing environment is fine. I am planned to do some load testing, but it is just in plan. 5. @ Pid: Can you explain me more detail on how to do with your suggestion, I am not developer, don't write codes, my role in this project is to setup the webserver, tomcat service and make it running and stable. ******************************************************************************************* The session count per application can be read via a JMX connection and a request to the appropriate MBean. ******************************************************************************************* 6. @ Geroge Sorry, I don't understand your question. We DO have Oracle Database in the backend. ******************************************************************************************* Are you storing objects on the session, in particular JDBC connections or result sets? ******************************************************************************************* Regards Bill On Sat, Oct 8, 2011 at 1:23 AM, Christopher Schultz < ch...@christopherschultz.net> wrote: > -----BEGIN PGP SIGNED MESSAGE----- > Hash: SHA1 > > Bill, > > On 10/6/2011 7:20 PM, Bill Wang wrote: > > Recently one of Tomcat application has performance issue, which get > > slow respond with high sessions. > > Can you give us some numbers? At what point do things slow down, and > by how much do they slow down? > > > One team member recommend me to adjust the session timeout from 60 > > minutes to 30 minutes. I will do that, but before change it, I'd > > like to understand how the performance related with the expire > > session timeout. > > > > <session-timeout>60</session-timeout> > > I'm not sure performance will change at all when changing the session > timeout. Tomcat runs session-expiration tasks periodically, and the > performance of that has more to do with the number of total sessions > than the timeout itself. > > If you have lots of sessions that must timeout instead of being > explicitly invalidated (i.e. people close their browsers instead of > logging-out), then you will have a lot of wasted memory that may > prevent the garbage collector from working efficiently. It's best to > destroy sessions as soon as they are not needed, so short session > timeouts can help with that. On the other hand, you want to give users > a reasonable amount of time to get a cup of coffee, etc. without > forcing them to re-login every time. > > You'll have to determine what is an appropriate amount of time for > your users. > > There is another option: selectively extend the session timeout for > certain sessions, or for certain operations. If a user enters a flow > that is expected to take a long time or the consequences of having the > session time out are frustrating (i.e. you have to re-enter tons of > data), you can change the session timeout for that one session to be > longer than the default. When the flow is over, you can re-set it back > to the default. We do that for a number of tasks in our webapp, for > instance. > > > Second, currently I monitor the session count by login the admin > > interface, > > Do you mean using the "manager" app? > > > the manual way is not efficiency, can I run some commands to get > > the sessions number? With that I can set a cronjob and generate the > > session report easily. > > If you have the manager app deployed, you can use the text or XML > interfaces from the command-line instead of the HTML interface. Simple > use of wget, curl, etc. should allow you to do this kind of thing. > > - -chris > -----BEGIN PGP SIGNATURE----- > Version: GnuPG v1.4.10 (MingW32) > Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/ > > iEYEARECAAYFAk6PC2gACgkQ9CaO5/Lv0PBo3gCgvV7dAylXSz1vz3jRX2jmr1lE > E9kAoMKnHUgOC5MEx31lz121tXT1aV8J > =CGz3 > -----END PGP SIGNATURE----- > > --------------------------------------------------------------------- > To unsubscribe, e-mail: users-unsubscr...@tomcat.apache.org > For additional commands, e-mail: users-h...@tomcat.apache.org > >