Overview
Tomcat Administration course includes detailed information on installation and efficient configuration of
Tomcat web server. Students learn the details of server's directories and configuration files, familiarize themselves with
Servlet and JavaServer Pages specifications and learn about the differences between Tomcat and JEE application servers.
During the training, methods of application deployment are discussed as well as the details of the web.xml file, valves,
logging, security realms, monitoring and cooperation of Tomcat server with Apache HTTPD to ensure load balancing, clustering
and efficient hosting of multiple applications.
Audience
Tomcat administration course is for web/application server administrators who need to be able to install, configure,
run, and tune the Apache Tomcat web server.
Prerequisites
Familiarity with any text editor and operating system. Basic knowledge of Java language and XML.
Course Format
This is a hands-on course. We apply a powerful learning cycle of short lecture, examples and labs on each topic.
Each student gets lab code and the entire course content printed out (organized in a ring binder).
Course Duration
Three days (21 hours), 9:00 AM-5:00 PM (1h lunch break); typically ends by 4:00 PM on the last day.
Course Details
- Introduction to JEE
- Specifications
- Relationship to Tomcat
- Servlets/JSPs
- Model-View-Controller (MVC) design pattern
- Introduction
- Tomcat's history
- Apache Software Foundation
- Tomcat licensing
- Versions of Tomcat
- Who is using Tomcat?
- Installing Tomcat
- Installing JDK
- Getting the installer
- Starting server - scripts
- Starting server - Tomcat's Monitor
- Installing Tomcat as a system service
- Running multiple Tomcat instances on the single machine
- Compiling Tomcat sources
- Tomcat Architecture and Configuration
- High level architecture
- Directory structure
- Configuration files
- XML, conf/server.xml
- Connector element (BIO, NIO, APR)
- Valves, Access Log Valve
- Remote Address Filter, Remote Host Filter
- Logging on Tomcat
- Deployments and Web Apps on Tomcat
- Directory structure of web apps
- The WEB-INF/web.xml deployment descriptor
- WAR (Web ARchive) files
- Context configuration
- context.xml
- Deploying app when Tomcat is up
- Debugging web applications in Eclipse IDE
- Session manager
- Tasks of session manager
- Standard Manager
- Persistent Manager
- Managing Resources and DataSource on Tomcat
- JNDI
- Tomcat's services
- Configuration and running cutom service
- Resources and JNDI in web apps
- Configuring JavaMail as a Tomcat resource
- Configuring JDBC data source on Tomcat
- Configuring connection pool
- Tomcat Security
- Using valves (Address, Host)
- Authentication and Authorization
- Overview of container-managed security
- Realms
- MemoryRealm
- JDBCRealm
- DataSourceRealm
- LockOutRealm
- Configuring SSL/TLS on Tomcat
- SSL Certificates
- Blocking access to Tomcat's apps
- Configuring SSO (Single Sign On) mechanism
- Monitoring on Tomcat
- Tomcat Manager application
- Java Management Extensions (JMX)
- Tomcat MBeans
- JConsole
- JVM Monitoring
- Load balancing and clustering
- Apache HTTPD + Tomcat
- AJP vs. HTTP
- Configuring mod_jk
- Load balancing
- Sticky sessions
- Session-replication
- Configuring clustering
- Farming
- Tomcat Performance Tuning
- Java/JVM tuning
- Tomcat tuning
- Apache Benchmark
- JMeter