Supporting Web Applications with Tomcat

Tomcat is a popular web application server used at such sites as LinkedIn and eBay. This 2-day course is for administrators and programmers who wish to develop or support the deployment of server software, particularly for Internet and Intranet Web applications, using Tomcat.

Approach

This course is part lecture, part hands-on.

Prerequisites

Delegates should have a working knowledge of web application support.

Duration

2 days

Equipment

The course may be run either:

Course Outline

Apache and Tomcat

  • Apache Software Foundation
  • Jakarta Project
  • J2EE Technologies
  • What is Tomcat?

Installing Tomcat

  • Obtaining and installing Tomcat
  • The Tomcat directory structure
  • Tomcat configuration files
  • Port numbers
  • Starting/stopping/restarting Tomcat
  • Checking that Tomcat is running

Java Web Applications

  • WAR file structure
  • Overview of Servlets and JSPs
  • The web.xml deployment descriptor
  • Ant

Deploying Web Applications

  • Context root
  • Tomcat deployment mechanisms
  • The Tomcat Manager
  • The Tomcat Administrator
  • Diagnosing and correcting deployment problems
  • Starting and stopping Web applications

Tomcat Configuration

  • Virtual hosting
  • Setting up JNDI resources & JDBC DataSources
  • Configuring a shared database
  • Accessing shared resources
  • Integrating Tomcat and Apache
  • Virtual hosting

Logging

  • How Web Applications Log
  • Log Levels
  • Log Handlers
  • Logging APIs - JULI & Log4j
  • Configuring Logging using JULI
  • Configuring Logging using Log4j

Monitoring

  • Setting up JMX Monitoring
  • Monitoring Tomcat using VisualVM
  • Installing the MBean plugin
  • Monitoring and Managing MBeans
  • Some useful MBeans to view

Performance

  • Using JMeter to measure performance
  • Tomcat tuning parameters
  • Tuning the JVM
  • Measuring web server performance
  • Capacity planning
  • Administering for growth
  • How to troubleshoot performance and reliability issues
  • How to monitor Tomcat and its utilization of server resources
  • Detailed information on performance tuning Tomcat
  • Deploy and monitor applications running on Tomcat Server

Security

  • Web security realms
  • Security options in web.xml
  • Users and roles
  • Configuring Tomcat security realms
  • Secure Sockets Layer (SSL)
  • Common "gotchas" in performance and security configuration
  • How to maximize performance and security

Wrap-Up