![]()
For development and operations teams, a presentation that covers undocumented secrets of Apache Tomcat with various tips and tricks for managing Tomcat.
Do you spend too much time sifting through Google results to find answers to your Apache Tomcat Questions? Now is your chance to learn undocumented secrets of Apache Tomcat. If you are using or considering using Apache Tomcat and would like to improve your knowledge, join Apache experts and committers Mark Thomas and Filip Hanik as they outline the top Tips and Tricks to make management and administration of Apache Tomcat easier, faster and more productive.
EMBEDDED PRESENTATION SLIDES (i.e. user can click “Next” thru slides)
Our configuration consists of the following components (all of them are running on a single Windows Server 2003 machine):
We are load testing the server with relatively simple requests.
It seems that under load (~8000 requests we are sending per minute from our load simulator) - we have a delay between apache web server and the mod_jk component.
Make sure you configure both Apache httpd and mod_jk to handle the traffic.
This means, the number of threads(workers) that httpd has will impact your system.
Also, in high concurrency, how you configure KeepAlive is important. There is a chance that Apache is using its threads waiting for the next request on idle connections, while active connections are not being handled.
Posting your configuration files may be a good idea.
best
Filip
Hi, I have Tomcat 5.0.28 running on more than one client with a SSL connector that allows identification with spanish certificates FNMT, DNIe and Camerfirma (among others).
The first thing to note is that you are currently running an unsupported version of Tomcat, which in Apache terms means that it's extremely unlikely to get any more upgrades or patches. It's in beta now, but a stable release of Tomcat 7.0 is likely to happen towards the end of this year, which will put you a full 3 versions behind the current release.
A detailed answer to the question requires more information, such as the exact versions of the server operating system, the JVM type and version, how you've configured the SSL connector and whether you're using APR or not.
This type of problem most often appears when a client has unexpectedly terminated the request, or disconnected before the request has completed, implying that the source is at the client end of the connection - it's often an unintended consequence of a user deciding to view a different page before a previous request has finished.
In your case, you state that some clients are not having the same problem; in order to track down the source you should monitor the access, error and application logs and match individual requests to the log entries. Look for commonalities between source IP address, User-agent and try to get exact details of the environment of the client which has identified the problem. If there is definitely only one client experiencing the problem, then you'll need to determine what's different about their configuration. It's possible that there's nothing wrong with your application, but that a server or network misconfiguration is the cause of the fault.
Even recent releases of the Sun JDK/JRE don't have all of the Certificate Authorities in use currently, which is another possibility for the cause - though I wouldn't expect to see a connection reset event as a symptom - but still, check the client isn't using a certificate from a new CA.
I can't guarantee it would make any difference, but I'd strongly recommend putting a testing and deployment plan together to bring your environment up to reasonably current versions, particularly as there are vulnerabilities in SSL which are likely to unpatched in the setup you describe. Tomcat 5.5 should be the minimum version you're running on, if upgrading the JVM to a recent version is a problem.
Setting up Apache Web Server and Tomcat Application Server for load balancing using mod_proxy_balancer.
This example uses mod_proxy_balancer as the load balancer. This configuration is useful for applications that are stateless and therefore do not require clustering or sticky-sessions. For more information, you can also check the page:
http://httpd.apache.org/docs/2.2/mod/mod_proxy_balancer.html
What led to my use of Tomcat started years before I had ever heard of Jakarta or Tomcat. I think it was late 1999 or early 2000 and inside E*TRADE there was a lively discussion going on for weeks in our hallways, in the conference rooms, and over email about standardizing on either servlets or enterprise java beans (EJB). I was crazy busy trying to get single sign-on and application federation server infrastructure installed at the time and was just hoping that the EJB/Servlet issue would resolve without any violence. The java application team standardized on servlets and the the resulting products were highly successful!
Around 2001, many of our peers in the industry went with EJBs and were having failed project after failed project. Our servlet-based software was running great, but was too expensive as we were on proprietary frameworks deployed over many nodes. To address costs we moved to open source, with Tomcat being a central part of that strategy. At that point, we really started feeling like we dodged a bullet by not adopting EJBs.
Open source EJBs were years away from being deployable and commercial ones were sketchy. Remember, this was the time of the PetStore reference EJB app and all of the theater around it. If you don’t remember PetStore, it's the app that made .NET look fantastic and allowed SpringSource to become a $362 million company!
![]()
For development and operations teams, a presentation that covers various security configuration options available in Apache Tomcat and SpringSource tc Server.
A default Apache Tomcat installation is secure but each installation environment is different and may have additional security requirements. This presentation will examine the security configuration options available in Apache Tomcat and SpringSource tc Server, when to use them (and when not to use them) and the threats they might help mitigate. The rationale behind having resource passwords (e.g. for database access) in clear text in server.xml will also be discussed.
![]()
For development and operations teams, a presentation that covers how to manage applications properly from cycling updates to determining failures.
Your business applications provide all the components that do the real work for your enterprise and use Tomcat as the engine to power that work. How can you ensure that your applications on Tomcat are managed properly? How do you cycle application updates over a group of more than twenty server instances? How do you determine the failure of application whether it is during start-up, execution or application shutdown?
![]()
For development and operations teams, a presentation that covers how large scale Tomcat deployments can be managed.
In the past, deploying Apache Tomcat in medium and large enterprise environments presented significant challenges due to the rudimentary management tools in Apache Tomcat. But no longer. SpringSource provides an enterprise version of Apache Tomcat, complete with all the enterprise features necessary for managing large scale Apache Tomcat deployments.
![]()
For development and operations teams, a presentation that covers performance tuning Tomcat and the JVM alongside configuration options, load balancing, and more.
In this webinar, Apache Tomcat committers Mark Thomas and Filip Hanik discuss performance tuning Apache Tomcat for your production environment. This webinar focuses on Tuning Tomcat and the JVM to correctly handle your application including usage patterns, hardware and network topology. You’ll learn when and how to apply the different tuning and configuration options as well as understanding load balancers and how they can impact your configuration settings. Also discussed: the impact of clustering and replication on your environment.
![]()
For development and operations teams, a presentation that covers approaches for optimizing and tuning Apache Tomcat.
As Tomcat takes on greater roles in enterprise environments, proper tuning and optimization becomes “top of mind” for all stakeholders as well as IT developers and operations teams. Key approaches and processes are laid out to help understand the process to ensure Tomcat runs successfully and with performance.
Popular Links