Re: Tomcat vs. Apache Performance Comparison for static HTML
Very interesting. Thanks for making the effort and sharing your results. -- *** * Rick Roberts* * Advanced Information Technologies, Inc. * * http://www.ait-web.com * *** Shapira, Yoav wrote: Howdy, Of course not. I'm only regergitating stuff I have read. But I have seen it from several different sources, so I took it as truth. Do you have benchmarks to prove otherwise? It could be the sources you read are outdated. I don't question their accuracy at the time they came out, although I don't even know what sources you're talking about (and it doesn't matter). Just for kicks, even though I've done this many times in the past for in-house purposes, I just did a simple benchmark so that people don't blindly accept X year old sources regarding tomcat performance. - Server hardware: Solaris 8, specifically from uname -a: SunOS 5.8 Generic_108528-15 sun4u sparc SUNW,Ultra-5_10. It has 512MB RAM. - Tomcat version: 4.1.27-LE - Apache version: 2.0.47, compiled on above platform - JDK version: 1.4.2, with no switches at all, i.e. client mode with no special heap of GC settings (yes, I know I could improve performance for tomcat by tuning these). - Server.xml setup: nearly exactly the same as unpacked distribution. I just removed unneeded connectors, leaving only the port 8080 connector. Yes, I know I could improve performance by modifying min/maxProcessors, etc. - httpd.conf setup: nearly exactly the same as unpacked distrubition. I just changed the listen port from 80 to 8080 so that I could use the exact same JMeter test plan. Yes, I know there are many things I can tune here to increase performance. - Test file: a simple test.html file, static, simple content. In fact it's so small I'll include the whole thing: htmlheadtitleTest page/title/headbodyThis is a test page/body/html - Test program: Apache JMeter 1.9 final running on Windows2000 Pro, with JDK 1.4.2. - Test plan tree: Test Plan - Thread Group: 10 threads, 1sec ramp-up, 100 loops - HTTP Request: GET, myhost, port 8080, /test.html - Graph Results (with file output) - Findings: Server #of Samples Average Deviation Median Apache 1000 17ms2510 Tomcat 1000 29ms4410 For both servers, CPU usage was light, and memory wasn't taxed much at all. So what does that say? Apache is faster by about 70% on average ((29-17)/17) at serving this small text file, with both servers very close to their out of the box configuration. Out of curiosity, I tried the test again with a larger text file: 30K or so in size. The results then were: Server #of Samples Average Deviation Median Apache 1000 182ms 277 90 Tomcat 1000 185ms 249 80 So now tomcat is faster? ;) We could debate forever about whether it's representative of real-world conditions, whether care should be taken to configure the server for optimal performance, etc. That's why everyone can and should run their own benchmarks for their own applications. With the above information anyone could easily reproduce the test. My point, however, is not that tomcat is faster or that apache is faster. My point is that it's easy to test performance and that you shouldn't trust sources, especially if they don't directly apply to your platform/server/application. Yoav Shapira - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: Tomcat vs. Apache Performance Comparison for static HTML
Nice. I'm bookmarking this post for the future. 'Nuf said. Thanks, Yoav! John Shapira, Yoav wrote: Howdy, Of course not. I'm only regergitating stuff I have read. But I have seen it from several different sources, so I took it as truth. Do you have benchmarks to prove otherwise? It could be the sources you read are outdated. I don't question their accuracy at the time they came out, although I don't even know what sources you're talking about (and it doesn't matter). Just for kicks, even though I've done this many times in the past for in-house purposes, I just did a simple benchmark so that people don't blindly accept X year old sources regarding tomcat performance. - Server hardware: Solaris 8, specifically from uname -a: SunOS 5.8 Generic_108528-15 sun4u sparc SUNW,Ultra-5_10. It has 512MB RAM. - Tomcat version: 4.1.27-LE - Apache version: 2.0.47, compiled on above platform - JDK version: 1.4.2, with no switches at all, i.e. client mode with no special heap of GC settings (yes, I know I could improve performance for tomcat by tuning these). - Server.xml setup: nearly exactly the same as unpacked distribution. I just removed unneeded connectors, leaving only the port 8080 connector. Yes, I know I could improve performance by modifying min/maxProcessors, etc. - httpd.conf setup: nearly exactly the same as unpacked distrubition. I just changed the listen port from 80 to 8080 so that I could use the exact same JMeter test plan. Yes, I know there are many things I can tune here to increase performance. - Test file: a simple test.html file, static, simple content. In fact it's so small I'll include the whole thing: htmlheadtitleTest page/title/headbodyThis is a test page/body/html - Test program: Apache JMeter 1.9 final running on Windows2000 Pro, with JDK 1.4.2. - Test plan tree: Test Plan - Thread Group: 10 threads, 1sec ramp-up, 100 loops - HTTP Request: GET, myhost, port 8080, /test.html - Graph Results (with file output) - Findings: Server #of Samples Average Deviation Median Apache 1000 17ms2510 Tomcat 1000 29ms4410 For both servers, CPU usage was light, and memory wasn't taxed much at all. So what does that say? Apache is faster by about 70% on average ((29-17)/17) at serving this small text file, with both servers very close to their out of the box configuration. Out of curiosity, I tried the test again with a larger text file: 30K or so in size. The results then were: Server #of Samples Average Deviation Median Apache 1000 182ms 277 90 Tomcat 1000 185ms 249 80 So now tomcat is faster? ;) We could debate forever about whether it's representative of real-world conditions, whether care should be taken to configure the server for optimal performance, etc. That's why everyone can and should run their own benchmarks for their own applications. With the above information anyone could easily reproduce the test. My point, however, is not that tomcat is faster or that apache is faster. My point is that it's easy to test performance and that you shouldn't trust sources, especially if they don't directly apply to your platform/server/application. 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] - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: Tomcat vs. Apache Performance Comparison for static HTML
It probably bears repeating the link to Craig's analysis of Apache vs Tomcat standalone and the procedure for determining what is best FOR YOUR APPLICATION: http://marc.theaimsgroup.com/?l=tomcat-userm=104874913017036w=2 BTW - as somebody alluded to earlier, this link was found through the FAQ, which describes at length the reasons why or why not to integrate with Apache. Jeff Tulley ([EMAIL PROTECTED]) (801)861-5322 Novell, Inc., The Leading Provider of Net Business Solutions http://www.novell.com [EMAIL PROTECTED] 8/8/03 11:01:01 AM Nice. I'm bookmarking this post for the future. 'Nuf said. Thanks, Yoav! John Shapira, Yoav wrote: Howdy, Of course not. I'm only regergitating stuff I have read. But I have seen it from several different sources, so I took it as truth. Do you have benchmarks to prove otherwise? It could be the sources you read are outdated. I don't question their accuracy at the time they came out, although I don't even know what sources you're talking about (and it doesn't matter). ... - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
RE: Tomcat and Apache | Performance
Hi Venkat, Thankx for the information. We are using ajp12 protocol and have the following configuration. Ajp12Connector port=8701 maxThreads=500 maxSpareThreads=50 minSpareThreads=10/ !-- Apache AJP13 support (mod_jk) Parameter address defines network interface this Interceptor binds to. Add it if you want to bind to just 127.0.0.1. address=127.0.0.1 Parameter tomcatAuthentication, controls if Tomcat honors ( and uses ) auth done in HTTP Server or not, when true Tomcat does not use in any way auth information provided by the HTTP Server. true is the default. tomcatAuthentication=false -- Ajp13Connector port=8717 / in server.xml. MaxClients in httpd.conf is set to 100. regards rajesh -Original Message- From: Venkat Reddy Valluri [mailto:[EMAIL PROTECTED]] Sent: Tuesday, December 24, 2002 7:46 PM To: Tomcat Users List Subject: RE: Tomcat and Apache | Performance There is a option in httpd.conf as well as server.xml(Ajp13Processor max processors) to set max clients to be served, incresing that size, may get it solved Make sure max Ajp13processors should be greater than or equal to max clients in httpd.conf Thks, --Venkat -Original Message- From: Rajesh B [mailto:[EMAIL PROTECTED]] Sent: Tue 12/24/2002 8:57 AM To: Tomcat Users List Cc: Subject:Tomcat and Apache | Performance Hi All, I am using tomcat 3.3.1 and apache 1.3.27 with mod_jk (ajp12 protocol). We are running it in Solaris 2.8 ( 4 CPU 4GB RAM ). At times when the system is under heavy load, apache simply stops processessing requests. And the hits/sec goes down. The system idle state is around 99%. At times , we get MaxClients reached error in error_logs. But this happens rarely. After 10 or 15 minutes, apache is able to serve requests. Has anyone expericed this kind of problem. Any pointers would be greatly appreciated. regards Rajesh.B -- To unsubscribe, e-mail: mailto:[EMAIL PROTECTED] For additional commands, e-mail: mailto:[EMAIL PROTECTED] -- To unsubscribe, e-mail: mailto:[EMAIL PROTECTED] For additional commands, e-mail: mailto:[EMAIL PROTECTED]
RE: Tomcat and Apache | Performance
There is a option in httpd.conf as well as server.xml(Ajp13Processor max processors) to set max clients to be served, incresing that size, may get it solved Make sure max Ajp13processors should be greater than or equal to max clients in httpd.conf Thks, --Venkat -Original Message- From: Rajesh B [mailto:[EMAIL PROTECTED]] Sent: Tue 12/24/2002 8:57 AM To: Tomcat Users List Cc: Subject:Tomcat and Apache | Performance Hi All, I am using tomcat 3.3.1 and apache 1.3.27 with mod_jk (ajp12 protocol). We are running it in Solaris 2.8 ( 4 CPU 4GB RAM ). At times when the system is under heavy load, apache simply stops processessing requests. And the hits/sec goes down. The system idle state is around 99%. At times , we get MaxClients reached error in error_logs. But this happens rarely. After 10 or 15 minutes, apache is able to serve requests. Has anyone expericed this kind of problem. Any pointers would be greatly appreciated. regards Rajesh.B -- To unsubscribe, e-mail: mailto:[EMAIL PROTECTED] For additional commands, e-mail: mailto:[EMAIL PROTECTED] winmail.dat-- To unsubscribe, e-mail: mailto:[EMAIL PROTECTED] For additional commands, e-mail: mailto:[EMAIL PROTECTED]