Tomcat is an JSP and servlet container that is widely used for hosting Java web applications built using Java servlets and/or JSPs. As a light weight alternative to "heavy" application servers such as JBoss it is often used as the deployment target for Java applications that have used alternative technology stacks to build nimble, less resource intensive applications
Tomcat for Light Weight, Nimble Java Applications
Tomcat is an important component in the architecture of Java applications because of its low resource footprint and is a favourite amongst developers for it quick start up and deploy times.
Many of the frameworks that are in wide use today, such as Spring Framework, GWT, Wicket and Vaadin are implemented as servelts and can be deployed to a Tomcat server. As a bare bones servlet container it allows developers o add the services they need as libarary dependencies to their projects, doing away with the cruft of unused services and features which are often overkill in the full JEE compliant applications servers.
Tomcat Clustering and High Availability
Tomcat is used in JBoss and Glassfish as the servlet and JSP container. Tomcat can be easily configured for load balancing and clustering with session replication for those services that have scalabiliy and availability requirements.
Despite these advanced features Tomcat is easy to configure and secure with nearly all configuration being done in a single file and per application configuration being done in a web descriptor files in each projects META-INF directory.
Jumping Bean provides tomcat support for:
- Configuration and installation,
- High Availability application architecture configuration,
- Tomcat troubleshooting,
- Tomcat training,
- Securing tomcat,
- Writing Java applications with Tomcat as the deployment target