Re: Tomcat 5.5.4 Stability
On Tue, 16 Nov 2004 23:17:22 -0500, V D <[EMAIL PROTECTED]> wrote: > > Today, I ran an axis application under both Tomcat 5.028 and 5.5.4. > Hitting this axis application with 100 simultaneous clients for many > hits. 5.0.28 seems to hold up very well. It drops connections once a > while. However, 5.5.4 drops many connections. I wonder if the Tomcat > team aware of this problem. No. You need to give reproduceable facts, prefereably with a simple application. Note that the low level code is extremely similar between 5.0 and 5.5. I doubt the few code changes could cause something like that. -- x Rémy Maucherat Developer & Consultant JBoss Group (Europe) SàRL x - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: Tomcat 5.5.4 Stability
Thank you for the reply. I am sorry that what I said is not true. Tested more with version 5.0.28 of Tomcat also produce the same result. Please see if this is "normal" behavior: I have an axis application, basically return a "hello world", I tried this with: 1) Axis 1.1 2) Axis 1.2 3) Tomcat 5.0.28 4) Tomcat 5.5.4 Some combinations of those. They all produce connection refuse. The max thread is 200, the acceptCount is 100. On the client side, I also send in some data roughly the size of "hello world". I have about 30 threads running, each continuously make requests to the server for about 100 requests for each threads. Some tests, I also put random wait time between requests for each thread in around 200 miliseconds. Some test, there is no wait time, after the first request finish, I would make a next one. After a while, some of the threads will generate exception: connection refused. With 30 threads, this seems to be low to me. Both the client and server sits in a same machime. My question is this: is this load/scenario normal? If not, I'll be happy to put together a test client and a test Soap Axis server code for you to investigate. You can easily take one of the example client, put it in 30 threads, and spin it 100 times in each thread. If you have any advice, or suggestion on anything I may have missed, please let me know. Right now, each request seem to have its own connection. Using the common http client for the client to reduce the number of connection, the things is twice as slow, and does not improve the situation (I did not pass any parameters to this connection pool thing, so default value is used on this). Thank you for your time. Remy Maucherat wrote: On Tue, 16 Nov 2004 23:17:22 -0500, V D <[EMAIL PROTECTED]> wrote: Today, I ran an axis application under both Tomcat 5.028 and 5.5.4. Hitting this axis application with 100 simultaneous clients for many hits. 5.0.28 seems to hold up very well. It drops connections once a while. However, 5.5.4 drops many connections. I wonder if the Tomcat team aware of this problem. No. You need to give reproduceable facts, prefereably with a simple application. Note that the low level code is extremely similar between 5.0 and 5.5. I doubt the few code changes could cause something like that. - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: Tomcat 5.5.4 Stability
On Wed, 17 Nov 2004 18:15:36 -0500, Vy Ho <[EMAIL PROTECTED]> wrote: > > Thank you for the reply. I am sorry that what I said is not true. > Tested more with version 5.0.28 of Tomcat also produce the same result. > Please see if this is "normal" behavior: > > I have an axis application, basically return a "hello world", I tried > this with: > > 1) Axis 1.1 > 2) Axis 1.2 > 3) Tomcat 5.0.28 > 4) Tomcat 5.5.4 > > Some combinations of those. They all produce connection refuse. The > max thread is 200, the acceptCount is 100. > > On the client side, I also send in some data roughly the size of "hello > world". > > I have about 30 threads running, each continuously make requests to the > server for about 100 requests for each threads. Some tests, I also put > random wait time between requests for each thread in around 200 > miliseconds. Some test, there is no wait time, after the first request > finish, I would make a next one. > > After a while, some of the threads will generate exception: connection > refused. With 30 threads, this seems to be low to me. Both the client > and server sits in a same machime. > > My question is this: is this load/scenario normal? If not, I'll be happy > to put together a test client and a test Soap Axis server code for you > to investigate. You can easily take one of the example client, put it > in 30 threads, and spin it 100 times in each thread. Well, although it doesn't seem much on the client, on the server side, it's IMO another story. Web services involve XML, which is very CPU intensive, so 30 concurrent requests is quite a bit. You can try to check the CPU usage of processes to see if the server process is maxed out (it probably is). With 5.5.4, you can attempt to increase the priority of the socket accepting thread. I don't know if it'll make a difference (this is untested at the moment), but, add the following to your Connector element: strategy="ms" threadPriority="8" Also, I noticed Windows is quite "connection failure"-happy, especially in localhost. I don't know if you're using Windows. -- x Rémy Maucherat Developer & Consultant JBoss Group (Europe) SàRL x - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: Tomcat 5.5.4 Stability
I would second Remy's sentiment about XML and concurrent processes. I've performed benchmarks with Java and C# on a P4 2.4ghz machine. with 2-4K of XML 10-15 concurrent processes with consume roughly 60-70% of the CPU. With 30, you're going to hit 90-100% of the CPU. At that point, more concurrent requests to Tomcat or any webserver for that matter will be starving for CPU cycles. peter - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: Tomcat 5.5.4 Stability
I just test this at home. I change all settings to use Tomcat 5.5.4, Axis 1.2. The result is a big surprise. Right now, I hit the server with 2 clients, each has 150 connections. There is no error so far. This machine is faster than the one at work, and also has double the amount of RAM. If things going this way, it'll be great. I also notice that there is no networking load (it all go within the machine). I wonder how well it does if it go across the network After running with 200 connections, I got out of memory error on the server. I give it max of 512M. I also increase the maxThread to 400. Without these, it could handle up to 200 concurrent connections. This is really good. - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: Tomcat 5.5.4 Stability
interesting information. You're probably already aware of this, but extrapolating 200 concurrent connection/requests over a 24hr period would mean in excess of 20 million page views or webservice requests per day. that would be a ton of traffic. over the network, you can expect considerably lower throughput unless you're using gigabit ethernet or multiple ethernet ports with multiple routers. peter On Wed, 17 Nov 2004 23:20:20 -0500, V D <[EMAIL PROTECTED]> wrote: > > I just test this at home. I change all settings to use Tomcat 5.5.4, > Axis 1.2. The result is a big surprise. > > Right now, I hit the server with 2 clients, each has 150 connections. > There is no error so far. > > This machine is faster than the one at work, and also has double the > amount of RAM. > > If things going this way, it'll be great. > > I also notice that there is no networking load (it all go within the > machine). I wonder how well it does if it go across the network After > running with 200 connections, I got out of memory error on the server. > I give it max of 512M. I also increase the maxThread to 400. Without > these, it could handle up to 200 concurrent connections. > > This is really good. > > > > - > 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 5.5.4 Stability
On Wed, 17 Nov 2004 23:20:20 -0500, V D <[EMAIL PROTECTED]> wrote: > > I just test this at home. I change all settings to use Tomcat 5.5.4, > Axis 1.2. The result is a big surprise. > > Right now, I hit the server with 2 clients, each has 150 connections. > There is no error so far. > > This machine is faster than the one at work, and also has double the > amount of RAM. > > If things going this way, it'll be great. > > I also notice that there is no networking load (it all go within the > machine). I wonder how well it does if it go across the network After > running with 200 connections, I got out of memory error on the server. > I give it max of 512M. I also increase the maxThread to 400. Without > these, it could handle up to 200 concurrent connections. > > This is really good. It's not very clear to me: did you use the default configuration or not ? If you didn't, what are the results with the default configuration ? (I'm trying to get an overview of what you did, and get comparison data to be able to make configuration recommendations in the future) -- x Rémy Maucherat Developer & Consultant JBoss Group (Europe) SàRL x - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: Tomcat 5.5.4 Stability
I didn't use the default configuration. The app. ran fine with 200 client threads. When increased to 300 client threads, it went out of memory and I stopped it. So, after that, I increased the maxthread to 400, and give the server 512 M for max amount of memory. The app. then ran fine. However, go to work, and restart the computer at work. I run the same thing again, 200 client threads choke the server. It did not go down, but client application get connection refused. If restart the client, it would be able to connect again. So, I am not sure what's the problem. Something to do with network, I am not sure. This is not a slow machine either. 2.53 Ghz, Pentium 4. I also use its real IP versus localhost, but same problem. The set up of the application is identical. I am talking about copy and unzip the things to make sure exactly same stuff get run. Both run version of JDK1.5. I have to find out what's going on now. It's not very clear to me: did you use the default configuration or not ? If you didn't, what are the results with the default configuration ? (I'm trying to get an overview of what you did, and get comparison data to be able to make configuration recommendations in the future) - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: Tomcat 5.5.4 Stability
which tool are you using to stress test? perhaps try a different tool to double check? when I test, I like to use apache ab and jmeter to validate the results. I'm a bit paranoid when it comes to telling management, "the server will handle X traffic" :) peter On Thu, 18 Nov 2004 11:18:07 -0500, Vy Ho <[EMAIL PROTECTED]> wrote: > > I didn't use the default configuration. The app. ran fine with 200 > client threads. When increased to 300 client threads, it went out of > memory and I stopped it. So, after that, I increased the maxthread to > 400, and give the server 512 M for max amount of memory. The app. then > ran fine. However, go to work, and restart the computer at work. I run > the same thing again, 200 client threads choke the server. It did not > go down, but client application get connection refused. If restart the > client, it would be able to connect again. So, I am not sure what's the > problem. Something to do with network, I am not sure. This is not a > slow machine either. 2.53 Ghz, Pentium 4. I also use its real IP > versus localhost, but same problem. The set up of the application is > identical. I am talking about copy and unzip the things to make sure > exactly same stuff get run. Both run version of JDK1.5. I have to > find out what's going on now. > > > > >It's not very clear to me: did you use the default configuration or > >not ? If you didn't, what are the results with the default > >configuration ? (I'm trying to get an overview of what you did, and > >get comparison data to be able to make configuration recommendations > >in the future) > > > > > > > > - > 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 5.5.4 Stability
This an a web service using Axis as the soap library. I developed my own stress tool for this. This is the same tool that get used at both computer. This is Windows XP. I'll see if SP2 will do any difference. The computer at home as SP2 on it. Peter Lin wrote: which tool are you using to stress test? perhaps try a different tool to double check? when I test, I like to use apache ab and jmeter to validate the results. I'm a bit paranoid when it comes to telling management, "the server will handle X traffic" :) peter - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
RE: Tomcat 5.5.4 Stability
Hi, >This an a web service using Axis as the soap library. I developed my >own stress tool for this. This is the same tool that get used at both >computer. Your time would be better spent moving to a publicly available stress testing tool. There are many, including many free ones. Results that not independently reproducible are irrelevant. Yoav 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 5.5.4 Stability
you might want to give jmeter a shot and see if it backs up your results. couldn't hurt :) peter On Thu, 18 Nov 2004 11:36:20 -0500, Vy Ho <[EMAIL PROTECTED]> wrote: > > This an a web service using Axis as the soap library. I developed my > own stress tool for this. This is the same tool that get used at both > computer. > > This is Windows XP. I'll see if SP2 will do any difference. The > computer at home as SP2 on it. > > Peter Lin wrote: > > >which tool are you using to stress test? perhaps try a different tool > >to double check? when I test, I like to use apache ab and jmeter to > >validate the results. I'm a bit paranoid when it comes to telling > >management, "the server will handle X traffic" :) > > > >peter > > > > > > > > > - > > > 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 5.5.4 Stability
Thank you for the advice. I'll give JMeter a shot. Shapira, Yoav wrote: Hi, This an a web service using Axis as the soap library. I developed my own stress tool for this. This is the same tool that get used at both computer. Your time would be better spent moving to a publicly available stress testing tool. There are many, including many free ones. Results that not independently reproducible are irrelevant. Yoav - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: Tomcat 5.5.4 Stability
With SP2 of Windows XP, the computer previously can't handle 50 threads can handle 200 threads now. More than that, I got connection refused error. - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: Tomcat 5.5.4 Stability
Vy Ho wrote: With SP2 of Windows XP, the computer previously can't handle 50 threads can handle 200 threads now. More than that, I got connection refused error. I've had terrible performance on SP2 (my development box). Unless this is your deployment environment, don't trust or worry about SP2 performance. It's terrible. Testing my application on Linux, with the same Tomcat setup, yields much more pleasurable results. Seth - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: Tomcat 5.5.4 Stability
that's interesting. makes me wonder what changes in SP2 cause the improvement. peter On Thu, 18 Nov 2004 14:30:16 -0500, Vy Ho <[EMAIL PROTECTED]> wrote: > With SP2 of Windows XP, the computer previously can't handle 50 threads > can handle 200 threads now. More than that, I got connection refused error. > > > > - > 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 5.5.4 Stability
I just test the thing under Red Hat (old version, kernel 2.4.x). It could handle up to 350 threads before choking. I'll see how well it does under the latest kernel tonight. - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: Tomcat 5.5.4 Stability
On Thu, 18 Nov 2004 17:14:53 -0500, Vy Ho <[EMAIL PROTECTED]> wrote: > I just test the thing under Red Hat (old version, kernel 2.4.x). It > could handle up to 350 threads before choking. I'll see how well it > does under the latest kernel tonight. If you try FC 3, I recommend you also use Java 5 (if you want a Sun VM). From what I understood, it's the only Sun VM which takes advantage of Linux 2.6. -- x Rémy Maucherat Developer & Consultant JBoss Group (Europe) SàRL x - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: Tomcat 5.5.4 Stability
Under Linux kernel 2.6 and Jdk 1.5 (5.0), the server could handle up to 400 client threads. There are couple time out error. Other than that, it works fine. Slow but fine. However, the desktop and other application is much more responsive compared to kernel 2.4. Please notes that each of these threads actually reconnect for each request (the connection is closed for each request). This probably could be improve dramatically in term of number of threads if I use keep-alive client connection. However, the overall result do not change (or much slower), because the machine can handle more connection, but it takes much longer to return each request. - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: Tomcat 5.5.4 Stability
On Fri, 19 Nov 2004 14:20:40 -0500, Vy Ho <[EMAIL PROTECTED]> wrote: > > Under Linux kernel 2.6 and Jdk 1.5 (5.0), the server could handle up to > 400 client threads. There are couple time out error. Other than that, > it works fine. Slow but fine. However, the desktop and other > application is much more responsive compared to kernel 2.4. Please > notes that each of these threads actually reconnect for each request > (the connection is closed for each request). This probably could be > improve dramatically in term of number of threads if I use keep-alive > client connection. However, the overall result do not change (or much > slower), because the machine can handle more connection, but it takes > much longer to return each request. Good results overall. Of course, as you mention, getting better scalability is useless at some point, since the response times will get too long to be useful. -- x Rémy Maucherat Developer & Consultant JBoss Group (Europe) SàRL x - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]