RE: Performance question JDBC vs Properties
Any chance you guys would consider NOT sending signed or encrypted emails to the list any more? They always choke my email client and it just doesn't seem necessary for the purpose of an email newsgroup. ;-) Thanks. Neal -Original Message- From: Antonio Fiol Bonnín [mailto:[EMAIL PROTECTED] Sent: Monday, February 16, 2004 11:40 PM To: Tomcat Users List Subject: Re: Performance question JDBC vs Properties I would write a reload config servlet. It will save you one JDBC access per request. Antonio Fiol Larraquy wrote: Hi all, I've got this doubt. My applicacion uses some properties files to config some events or constants, or whatever, but it's job basically is to map the users click on a JSP, to a servlet and define what class should take this event. So, every request comming to a JSP, will be a search in this file. This is for writing only 1 Servlet. For instance, if an user clicks ShowClients something like this should be written at the file. Where this class is called to do the job. ShowClients=com.jkt.proyect.clients.ShowClients Or ShowProducts: ShowProducts=com.jkt.proyect.products.ShowProducts This file, should be as big as use cases in the system. Actually we've written 2000 lines. My problem, is that for reconfiguring this file, or adding lines to it, I've got to reload the application. As we are at deploying time, this happens quite often, so I've got to take users out of the system, and then, calling them to continue working (they are quiete few until next month). I'm thinking of sending to logic to a database, I mean configure this in a table. So if I've got 2000 records in this table, would it be much less performant that writing it in a file, as it is now working? Thanks in advance. - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Performance question JDBC vs Properties
Hi all, I've got this doubt. My applicacion uses some properties files to config some events or constants, or whatever, but it's job basically is to map the users click on a JSP, to a servlet and define what class should take this event. So, every request comming to a JSP, will be a search in this file. This is for writing only 1 Servlet. For instance, if an user clicks ShowClients something like this should be written at the file. Where this class is called to do the job. ShowClients=com.jkt.proyect.clients.ShowClients Or ShowProducts: ShowProducts=com.jkt.proyect.products.ShowProducts This file, should be as big as use cases in the system. Actually we've written 2000 lines. My problem, is that for reconfiguring this file, or adding lines to it, I've got to reload the application. As we are at deploying time, this happens quite often, so I've got to take users out of the system, and then, calling them to continue working (they are quiete few until next month). I'm thinking of sending to logic to a database, I mean configure this in a table. So if I've got 2000 records in this table, would it be much less performant that writing it in a file, as it is now working? Thanks in advance. - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: Performance question JDBC vs Properties
I would write a reload config servlet. It will save you one JDBC access per request. Antonio Fiol Larraquy wrote: Hi all, I've got this doubt. My applicacion uses some properties files to config some events or constants, or whatever, but it's job basically is to map the users click on a JSP, to a servlet and define what class should take this event. So, every request comming to a JSP, will be a search in this file. This is for writing only 1 Servlet. For instance, if an user clicks ShowClients something like this should be written at the file. Where this class is called to do the job. ShowClients=com.jkt.proyect.clients.ShowClients Or ShowProducts: ShowProducts=com.jkt.proyect.products.ShowProducts This file, should be as big as use cases in the system. Actually we've written 2000 lines. My problem, is that for reconfiguring this file, or adding lines to it, I've got to reload the application. As we are at deploying time, this happens quite often, so I've got to take users out of the system, and then, calling them to continue working (they are quiete few until next month). I'm thinking of sending to logic to a database, I mean configure this in a table. So if I've got 2000 records in this table, would it be much less performant that writing it in a file, as it is now working? Thanks in advance. - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] smime.p7s Description: S/MIME Cryptographic Signature
Re: performance question
Well, there could be loads of trouble in a Tomcat! Normally it isn't just the Tomcat performing badly, the most common problem is design and code problems. You can gain 10-20% performance by tweaking Tomcat but that doesn't sound like it's enough to solve your problem. To me your problem sounds like a threadding problem! Are you using SingleThreadModel on the servlets (Don't) ? Are any of the service() (also doPost, doGet ect.) methods synchronized ? Do you use the session object for storing large amounts of data (don't) ? How many DB connections do you have ? What's the threadcount ? Don't mind that it's about WebSphere, the general principles are the same.: http://www-3.ibm.com/software/webservers/appserv/ws_bestpractices.pdf A little more light entertainment : http://www.fawcette.com/javapro/2002_08/online/servletsjsp_08_06_02/Java%20Servlets%20Ch16.pdf Regards Kleth -- Kristian A. Leth Maersk Data Transport/Architects Specialists. -- - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
RE: performance question
Hi, Mark. Keep your head up. I just let you know that I started with 1 transaction per 4 sec and now we could do per 0.5 sec. As to scalability, I could make it reaching max resource per box. I started with 500 users and now on same wintel box I could go above 2500 users, which I could prove that I reached the max resources on that box. It looks that you have a lot of things to do. To get a shortcut, try IBM JRocket. If you application support JRocket, then you may gain the response time instantly. It worked on mine. However, we stick with jdk 1.4.1 and gain both response time and scalability. good luck, jay -Original Message- From: Mark F [mailto:[EMAIL PROTECTED] Sent: Tuesday, August 05, 2003 5:21 AM To: Tomcat Users List Subject: performance question Tomcat 4.0.6 Solaris 8 Java SDK 1.4.2 We have a web app that is slightly slow. This is a problem because it is just a bit slower than the app it is supposed to replace. This has the customer upset, partially because we all hate change, but also understandably, the customer wants it faster. We had a third party build the application but we will maintain it. For whatever reason the company that built it will not be providing any more support as to how we can make it go faster. We have looked at the box, and it does not seem to be taxed. We have tried setting CATALINA_OPTS to maximize performance but tomcat does not seem to be using the additional memory and the system's load average remains low. Is there any way we can have tomcat use more resources, as much as necessary to run the application faster? On a side note I can find no documentation that explains the difference between JAVA_OPTS and CATALINA_OPTS? Also, we tried upgrading to 4.1.24 yesterday on another test server. The application will not run correctly on the newer version of tomcat, any ideas why? The results of the queries are not correct and the data is not returned correctly. Is there any major change in tomcat 4.1.24 from 4.0.6 that would cause such a disparity. Thanks, -Mark
performance question
Tomcat 4.0.6 Solaris 8 Java SDK 1.4.2 We have a web app that is slightly slow. This is a problem because it is just a bit slower than the app it is supposed to replace. This has the customer upset, partially because we all hate change, but also understandably, the customer wants it faster. We had a third party build the application but we will maintain it. For whatever reason the company that built it will not be providing any more support as to how we can make it go faster. We have looked at the box, and it does not seem to be taxed. We have tried setting CATALINA_OPTS to maximize performance but tomcat does not seem to be using the additional memory and the system's load average remains low. Is there any way we can have tomcat use more resources, as much as necessary to run the application faster? On a side note I can find no documentation that explains the difference between JAVA_OPTS and CATALINA_OPTS? Also, we tried upgrading to 4.1.24 yesterday on another test server. The application will not run correctly on the newer version of tomcat, any ideas why? The results of the queries are not correct and the data is not returned correctly. Is there any major change in tomcat 4.1.24 from 4.0.6 that would cause such a disparity. Thanks, -Mark
RE: performance question
Howdy, Tomcat 4.0.6 Use Tomcat 4.1.27. We have looked at the box, and it does not seem to be taxed. We have tried setting CATALINA_OPTS to maximize performance but tomcat does not seem to be using the additional memory and the system's load average remains low. Java (this is not tomcat-specific) will use as much memory as it needs. You can add -Xms to specify a minimum memory usage if you'd like, but this won't gain you much performance. Is there any way we can have tomcat use more resources, as much as necessary to run the application faster? No, see above. On a side note I can find no documentation that explains the difference between JAVA_OPTS and CATALINA_OPTS? There's no difference. I like JAVA_OPTS better as I think it's a clearer name. Also, we tried upgrading to 4.1.24 yesterday on another test server. The application will not run correctly on the newer version of tomcat, any ideas why? How can you expect anyone to know without knowing your app? The results of the queries are not correct and the data is not returned correctly. Is there any major change in tomcat 4.1.24 from 4.0.6 that would cause such a disparity. There are no changes from 4.0.x to 4.1.x that would cause your DB queries to return different results. It's much more likely a DB connection configuration issue on your side. Yoav Shapira This e-mail, including any attachments, is a confidential business communication, and may contain information that is confidential, proprietary and/or privileged. This e-mail is intended only for the individual(s) to whom it is addressed, and may not be saved, copied, printed, disclosed or used by anyone else. If you are not the(an) intended recipient, please immediately delete this e-mail from your computer system and notify the sender. Thank you. - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: Tomcat Performance question
Hi Sean, My problem is that my sys admin person who needs to deploy this system on a production box is concerned that Tomcat cannot be performant enough to satisfy the high volume of requests on the server. He is convinced that Tomcat is loaded every time anyone accesses the html, even if they do not access the servlets themselves. No, tomcat is already started. The tomcat process is running, waiting for requests. Each requests is passed to an already spawned and waiting thread. So handling a request is pretty fast. Tomcat behaves like a normal webserver in this regard: started and waiting for requests. Even the servlets inside Tomcat are started once at startup and then are reused on every request in a separate thread. HTML-serving is just another servlet in tomcat, that just reads a file and passes it to the servlet output stream. I assume your admin compares tomcat to CGI-programs. CGI-progams (mostly written in Perl, thus often referred to as CGI-script) are started every time a request goes to them; this indeed is not good for performance, especially for scripts that need to start-up a huge interpreter that needs to parse its script first. One more point. These servlets must be in a secure environment. They use a Thawte certificate for security. I thought Tomcat could be configured to use a secure certificate fairly simply, but he says otherwise. Yes. Anyway I'd suggest to always use Apache as the frontend (handling as well the SSL stuff) and then connect tomcat with AJP12/13 to the apache. ciao, -hen -- To unsubscribe, e-mail: mailto:[EMAIL PROTECTED] For additional commands, e-mail: mailto:[EMAIL PROTECTED]
AW: Tomcat Performance question
One more point. These servlets must be in a secure environment. They use a Thawte certificate for security. I thought Tomcat could be configured to use a secure certificate fairly simply, but he says otherwise. Thawte certs can be used with tomcat, just the installation of the cert is a bit problematic -- http://www.comu.de/docs/tomcat_ssl.htm Yes. Anyway I'd suggest to always use Apache as the frontend (handling as well the SSL stuff) and then connect tomcat with AJP12/13 to the apache. Maybe I did something wrong with mod_jk but, since I split Apache from Tomcat again, we got a huge performance increase on the tomcat side. Now Apache handles http and Tomcat handles https. Since our webapp needs secure auth anyway, we use tomcat for the whole process. IMHO, noone will run into trouble if he/she uses tomcat without apache. The only problem i can see is, that tomcat 3.3.x is unable to use different sslcerts for different vhosts. Can anyone pls verify this? Or better not ;-)) -- To unsubscribe, e-mail: mailto:[EMAIL PROTECTED] For additional commands, e-mail: mailto:[EMAIL PROTECTED]
Performance question regarding mod_jk
I have been running performance tests on a servlet. Some of my tests I go through apache, and other tests I bypass apache and go straight to tomcat. The results of my tests are dramatic. When I go straight through tomcat, my servlet will perform it's task at the rate of 35/second. But when I go through apache the rate is 3/second. I suspect the fault lies in mod_jk, does anyone have performance tuning advice, or another explanation as to why the performance drops so much? The only difference between my tests is the server port number that I input to access the servlet (one port goes to apache, one to tomcat). Thanks, - Scott __ Do You Yahoo!? Yahoo! Photos - Share your holiday photos online! http://photos.yahoo.com/ - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, email: [EMAIL PROTECTED]