Re: Tomcat problems with large number of contexts in webapps
if you use a more recent JDK, then the OutOfMemoryError should have an additional message, depending on what this message is, you'll need to apply different tuning parameters. so if you share the message with us, we can maybe help you, if your OOME doesn't have a message, upgrade your JDK and try again Filip mopont wrote: Hello everyone! I use tomcat since version 4, and in all of this time I always used to work with small number of contexts in the webapps. Nowadays I'm in working with a e-learning application, so we customize the same version of our application to our clients. The fact is that the increasing number of clients requests for the product made the number of contexts in our tomcat raise to a limit, at this moment we have around 38 contexts (6.000 files each). While we were using 4...5 contexts everything was fine, but now all that we go is a bunch of OutofMemory errors even with a single .class deployment. We use IIS as the front end + ISAPI FILTER + Tomcat. In a first moment we tought that a version upgrade would give us a solution, and afted doing that unhapply the same occurs again and again we gave to tomcat -Xms 512m -Xmx1024m of memory, but we have a OutofMemory even before reaching that limit. We setted the configuration for the JK connector for 450 connections and even before that the same occurs!! Now we are thinking about clustering tomcat, but we fear that even a cluster won't give us a solution. Has anyone here experienced a similar problem before? We already thinking in moving to SunAppServer... can someone here help me with this ? thanks in advance!!! No virus found in this incoming message. Checked by AVG. Version: 7.5.524 / Virus Database: 270.2.0/1495 - Release Date: 6/10/2008 5:11 PM - To start a new topic, e-mail: users@tomcat.apache.org To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Tomcat problems with large number of contexts in webapps
Hello everyone! I use tomcat since version 4, and in all of this time I always used to work with small number of contexts in the webapps. Nowadays I'm in working with a e-learning application, so we customize the same version of our application to our clients. The fact is that the increasing number of clients requests for the product made the number of contexts in our tomcat raise to a limit, at this moment we have around 38 contexts (6.000 files each). While we were using 4...5 contexts everything was fine, but now all that we go is a bunch of OutofMemory errors even with a single .class deployment. We use IIS as the front end + ISAPI FILTER + Tomcat. In a first moment we tought that a version upgrade would give us a solution, and afted doing that unhapply the same occurs again and again we gave to tomcat -Xms 512m -Xmx1024m of memory, but we have a OutofMemory even before reaching that limit. We setted the configuration for the JK connector for 450 connections and even before that the same occurs!! Now we are thinking about clustering tomcat, but we fear that even a cluster won't give us a solution. Has anyone here experienced a similar problem before? We already thinking in moving to SunAppServer... can someone here help me with this ? thanks in advance!!! -- View this message in context: http://www.nabble.com/Tomcat-problems-with-large-number-of-contexts-in-webapps-tp17788155p17788155.html Sent from the Tomcat - User mailing list archive at Nabble.com.
RE: Tomcat problems with large number of contexts in webapps
From: mopont [mailto:[EMAIL PROTECTED] Subject: Tomcat problems with large number of contexts in webapps we gave to tomcat -Xms 512m -Xmx1024m of memory, but we have a OutofMemory even before reaching that limit. Need details here. What JDK are you using? If it's a HotSpot JVM, are you running out of PermGen space? Have you profiled your heap? Have you looked at a running Tomcat with JConsole or equivalent to see what's going on? Have you read the FAQ? http://wiki.apache.org/tomcat/FAQ/Memory - Chuck THIS COMMUNICATION MAY CONTAIN CONFIDENTIAL AND/OR OTHERWISE PROPRIETARY MATERIAL and is thus for use only by the intended recipient. If you received this in error, please contact the sender and delete the e-mail and its attachments from all computers. - To start a new topic, e-mail: users@tomcat.apache.org To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
ImageMagick, tomcat problems.
I'm not a java developer, but one of our websites has a java backend. We just got a new version that has some major updates. It requires ImageMagick. I have installed ImageMagick and verifies it works with : convert logo: logo.gif, identify logo.gif, imdisplay logo.gif. I've also moved ImageMagick DLL's into the Windows-system directory. I've also put jmagick.jar in c:\program files\java\j2re.x.x.x.x\lib\ext\ We are using ImageMagick in file uploads to resize the image. What i'm experiencing is that when the jmagick.jar is in that dir.. I upload a file. nothing is put on the filesystem. if I take out that jmagick.jar, the application throws some imageMagick exceptions but the image does get copied on the filesystem.. of course unsized.. Any ideas or a point in the right direction? -thanks
Detect tomcat problems with a custom java reporting apps?
Hello, I want to build a small custom reporting tool for our tomcat production server. First of all is this the right place to ask about this kind of things or is this more a question for the dev list? The basic idea is, I want to send queries to tomcat and if one fails three times send out alert messages to the admins. My first idea was, to just use the http common client and use the http status codes. But this is too easy as I suspect because an out of memory exception wouldn't be considered as an error because it sends back a html page. So what can I do? Is JMX the magic word here? I saw some ant tasks in the docs but no way of detecting a java.lang.outOfMemory Exception. Cheers, Pete - To start a new topic, e-mail: users@tomcat.apache.org To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: Detect tomcat problems with a custom java reporting apps?
maybe you should look at existing tools first? http://www.lambdaprobe.org/d/index.htm regards leon On 6/12/06, Peter Neu [EMAIL PROTECTED] wrote: Hello, I want to build a small custom reporting tool for our tomcat production server. First of all is this the right place to ask about this kind of things or is this more a question for the dev list? The basic idea is, I want to send queries to tomcat and if one fails three times send out alert messages to the admins. My first idea was, to just use the http common client and use the http status codes. But this is too easy as I suspect because an out of memory exception wouldn't be considered as an error because it sends back a html page. So what can I do? Is JMX the magic word here? I saw some ant tasks in the docs but no way of detecting a java.lang.outOfMemory Exception. Cheers, Pete - To start a new topic, e-mail: users@tomcat.apache.org To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] - To start a new topic, e-mail: users@tomcat.apache.org To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
AW: Detect tomcat problems with a custom java reporting apps?
Yes, I am using this already. But there is some vital functionality missing. When an java.lang.outOf.MemoryException happens I won't get an alert unless I happen to be using lambda at the moment. So what we have at hand is a 'Schrödinger Cat' situation. I need to monitor the jmx control layer and have my program send out alerts when something bad happens. So far I have 2 problems: 1. How do I find an error? I played around with the JMX Proxy Servlet. There is this Mbean: MemoryPool. When I query this I get the following result: Name: java.lang:type=MemoryPool,name=Perm Gen [shared-rw] modelerType: sun.management.MemoryPoolImpl Type: NON_HEAP CollectionUsageThreshold: 0 CollectionUsageThresholdExceeded: true MemoryManagerNames: [Ljava.lang.String;@943129 CollectionUsageThresholdSupported: true . If I see this I can't tell if anything is wrong. So what to do? 2. How do I access the jmxproxy servlet from a java app? It requires authentication. :o( Cheers, Pete - To start a new topic, e-mail: users@tomcat.apache.org To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: Detect tomcat problems with a custom java reporting apps?
I'm not sure that after something bad happens you can access the server at all. An OutOfMemory or an AllThreadsBusy Exception normally lead to a non-responding tomcat. The best thing you could do is monitoring the logs with a separate script on the same machine and send mails on failure imho. regards leon p.s. for the application monitoring of your production server you should try moskito :-) On 6/12/06, Peter Neu [EMAIL PROTECTED] wrote: Yes, I am using this already. But there is some vital functionality missing. When an java.lang.outOf.MemoryException happens I won't get an alert unless I happen to be using lambda at the moment. So what we have at hand is a 'Schrödinger Cat' situation. I need to monitor the jmx control layer and have my program send out alerts when something bad happens. So far I have 2 problems: 1. How do I find an error? I played around with the JMX Proxy Servlet. There is this Mbean: MemoryPool. When I query this I get the following result: Name: java.lang:type=MemoryPool,name=Perm Gen [shared-rw] modelerType: sun.management.MemoryPoolImpl Type: NON_HEAP CollectionUsageThreshold: 0 CollectionUsageThresholdExceeded: true MemoryManagerNames: [Ljava.lang.String;@943129 CollectionUsageThresholdSupported: true . If I see this I can't tell if anything is wrong. So what to do? 2. How do I access the jmxproxy servlet from a java app? It requires authentication. :o( Cheers, Pete - To start a new topic, e-mail: users@tomcat.apache.org To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] - To start a new topic, e-mail: users@tomcat.apache.org To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
AW: Detect tomcat problems with a custom java reporting apps?
You are right Leon. I just did a field test on our test server. The perm gen space is relatively small on that machine. So opened a lot sessions and did a lot of XSLT/FOP/Excel generation. Thus the perm gen space was spent very fast. I monitored this with lambda. In the end the server did not respond anymore. And here comes the frightening news. There is no trace in the log files for that problem. So it is safe to say when the server does not respond in say 2 minutes the game is over. One question remains after all. Doesn't it pay off to simply look ater the Memory space in frequent intervalls to see it bottle neck is ahead? I mean it's possible to define certain ranges. Any ideas? Cheers, Swen -Ursprüngliche Nachricht- Von: Leon Rosenberg [mailto:[EMAIL PROTECTED] Gesendet: Montag, 12. Juni 2006 14:22 An: Tomcat Users List Betreff: Re: Detect tomcat problems with a custom java reporting apps? I'm not sure that after something bad happens you can access the server at all. An OutOfMemory or an AllThreadsBusy Exception normally lead to a non-responding tomcat. The best thing you could do is monitoring the logs with a separate script on the same machine and send mails on failure imho. regards leon p.s. for the application monitoring of your production server you should try moskito :-) On 6/12/06, Peter Neu [EMAIL PROTECTED] wrote: Yes, I am using this already. But there is some vital functionality missing. When an java.lang.outOf.MemoryException happens I won't get an alert unless I happen to be using lambda at the moment. So what we have at hand is a 'Schrödinger Cat' situation. I need to monitor the jmx control layer and have my program send out alerts when something bad happens. So far I have 2 problems: 1. How do I find an error? I played around with the JMX Proxy Servlet. There is this Mbean: MemoryPool. When I query this I get the following result: Name: java.lang:type=MemoryPool,name=Perm Gen [shared-rw] modelerType: sun.management.MemoryPoolImpl Type: NON_HEAP CollectionUsageThreshold: 0 CollectionUsageThresholdExceeded: true MemoryManagerNames: [Ljava.lang.String;@943129 CollectionUsageThresholdSupported: true . If I see this I can't tell if anything is wrong. So what to do? 2. How do I access the jmxproxy servlet from a java app? It requires authentication. :o( Cheers, Pete - To start a new topic, e-mail: users@tomcat.apache.org To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] - To start a new topic, e-mail: users@tomcat.apache.org To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] - To start a new topic, e-mail: users@tomcat.apache.org To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Re: Detect tomcat problems with a custom java reporting apps?
I think you need a multilayer system :-) 1) a http-client app which simply calls the same simple servlet (simply writing available in the response or something like this) each 10 seconds and check if the server replies at all. 2) monitor cpu load on the machine. If the idle time is 100% the tomcat is probably dead (This of course expects some continious load on the server) 3) monitor the logs 4) your simple servlet from 1) could deliver current free memory and the monitoring application could raise alerts if the amount decreases (still, would be harder to get PermGenSpace) Leon P.S. btw, an outofmemory in the permgenspace doesn't necessary mean an OutOfMemory in the logs. The AllThreadsBusy message also happens because an OutOfMemory. Or any other strange log messages. We had this situation (running of permspace) some time ago, and the errors were everything but logical: response already commited exceptions or bean xyz not found for example. regards Leon On 6/12/06, Peter Neu [EMAIL PROTECTED] wrote: You are right Leon. I just did a field test on our test server. The perm gen space is relatively small on that machine. So opened a lot sessions and did a lot of XSLT/FOP/Excel generation. Thus the perm gen space was spent very fast. I monitored this with lambda. In the end the server did not respond anymore. And here comes the frightening news. There is no trace in the log files for that problem. So it is safe to say when the server does not respond in say 2 minutes the game is over. One question remains after all. Doesn't it pay off to simply look ater the Memory space in frequent intervalls to see it bottle neck is ahead? I mean it's possible to define certain ranges. Any ideas? Cheers, Swen -Ursprüngliche Nachricht- Von: Leon Rosenberg [mailto:[EMAIL PROTECTED] Gesendet: Montag, 12. Juni 2006 14:22 An: Tomcat Users List Betreff: Re: Detect tomcat problems with a custom java reporting apps? I'm not sure that after something bad happens you can access the server at all. An OutOfMemory or an AllThreadsBusy Exception normally lead to a non-responding tomcat. The best thing you could do is monitoring the logs with a separate script on the same machine and send mails on failure imho. regards leon p.s. for the application monitoring of your production server you should try moskito :-) On 6/12/06, Peter Neu [EMAIL PROTECTED] wrote: Yes, I am using this already. But there is some vital functionality missing. When an java.lang.outOf.MemoryException happens I won't get an alert unless I happen to be using lambda at the moment. So what we have at hand is a 'Schrödinger Cat' situation. I need to monitor the jmx control layer and have my program send out alerts when something bad happens. So far I have 2 problems: 1. How do I find an error? I played around with the JMX Proxy Servlet. There is this Mbean: MemoryPool. When I query this I get the following result: Name: java.lang:type=MemoryPool,name=Perm Gen [shared-rw] modelerType: sun.management.MemoryPoolImpl Type: NON_HEAP CollectionUsageThreshold: 0 CollectionUsageThresholdExceeded: true MemoryManagerNames: [Ljava.lang.String;@943129 CollectionUsageThresholdSupported: true . If I see this I can't tell if anything is wrong. So what to do? 2. How do I access the jmxproxy servlet from a java app? It requires authentication. :o( Cheers, Pete - To start a new topic, e-mail: users@tomcat.apache.org To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] - To start a new topic, e-mail: users@tomcat.apache.org To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] - To start a new topic, e-mail: users@tomcat.apache.org To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] - To start a new topic, e-mail: users@tomcat.apache.org To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
Tomcat problems.
Hello, I'm having some problems with apache+tomcat with this configuration: Apache 2.0.51 (on Fedora Core 2) Tomcat 5.0.28 JDK 1.4.0_04 Mod_jk connector for FC2. Sometimes system goes down and we don't have any idea what the reason is. We get this error sometimes: 10-feb-2006 10:05:02 org.apache.commons.modeler.Registry registerComponent GRAVE: Error registering server:type=RequestProcessor,worker=jk-9109,name=JkRequest413 javax.management.InstanceAlreadyExistsException: server:type=RequestProcessor,worker=jk-9109,name=JkRequest413 at mx4j.server.MBeanServerImpl.register(MBeanServerImpl.java:1123) at mx4j.server.MBeanServerImpl.registerImpl(MBeanServerImpl.java:1054) at mx4j.server.MBeanServerImpl.registerMBeanImpl(MBeanServerImpl.java:1002) at mx4j.server.MBeanServerImpl.registerMBean(MBeanServerImpl.java:978) at org.apache.commons.modeler.Registry.registerComponent(Registry.java:871) at org.apache.jk.common.ChannelSocket.registerRequest(ChannelSocket.java:436) at org.apache.jk.common.HandlerRequest.decodeRequest(HandlerRequest.java:443) at org.apache.jk.common.HandlerRequest.invoke(HandlerRequest.java:352) at org.apache.jk.common.ChannelSocket.invoke(ChannelSocket.java:743) at org.apache.jk.common.ChannelSocket.processConnection(ChannelSocket.java:675) at org.apache.jk.common.SocketConnection.runIt(ChannelSocket.java:866) at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:683) at java.lang.Thread.run(Thread.java:536) Could anyone tell me something about it? thank you in advance. -- Angel Prieto [EMAIL PROTECTED] SINERGIA TECNOLÓGICA C/ Almirante Churruca 30007 Murcia TEL. 968 270 624Fax. 968 231 501 www.sinergiatec.com __ La información incluida en el presente correo electrónico es CONFIDENCIAL, siendo para el uso exclusivo del destinatario arriba mencionado. Si usted lee este mensaje y no es el destinatario señalado, el empleado o el agente responsable de entregar el mensaje al destinatario, o ha recibido esta comunicación por error, le informamos que está totalmente prohibida cualquier divulgación, distribución o reproducción de esta comunicación, y le rogamos que nos lo notifique, nos devuelva el mensaje original a la dirección arriba mencionada y borre el mensaje. Gracias. __ - To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]