Introduction
In this Apache Tomcat Web Application Server - Management & Administration course, you will learn how to install and configure Apache Tomcat, as well as learn the key mechanisms of installing, administering, and managing Web Applications. This course emphasizes altering key configuration artifacts for optimum performance, availability, and fault tolerance. You will learn about integration with existing security mechanisms and databases, as well as high-performance scalability, clustering, and fault-tolerant fail-over techniques.
Course Objectives
- An overview and explanation of how Tomcat relates to Java EE (J2EE) and compares to other application servers
- The Installation and setting up of Tomcat on both Windows and UNIX-type environments
- Deploy, support, and troubleshoot applications on Tomcat
- Navigate Tomcat's directory structure
- Tomcat's architecture and configuration files: server.xml, context.xml, properties, etc.
- Web application structure and configuration: web.xml
- Secure Tomcat and applications running on it and Set up Tomcat for SSL
- Tune Tomcat's performance
- Exploration of different load-balancing and high-availability strategies with Tomcat
Target Audience
Experienced web server administrators who need to install, configure, and run Apache Tomcat web server.
Requirements
This course is designed for: Web/application server administrators who need to be able to install, configure, run, and tune the Apache Tomcat Application Server.
To get the most benefit from the Tomcat Training course, you should be familiar with the basic principles of web/application server administration.
Course Outline
Tomcat Overview
- Quick overview of Apache
- Apache Software Foundation
- Jakarta Project
- Tomcat Licensing
- J2EE Technologies
- Java Web Development
- Servlet/JSP Containers
Java Web Applications
- An Overview of Servlets
- The Advantages of Servlets & The Lifecycle
- Java Server Pages
- JSP, JavaBeans, and JSP Tag Libraries
- MVC frameworks
Installing Tomcat
- Downloading and Installing Apache Tomcat
- Download and install a JVM, Download Tomcat, Download and install Ant
- Windows installer
- Java memory management and tweaking the JVM for performance
Tomcat Directories
- Tomcat Installation Directories, Tomcat Directory Structure, The bin Directory, Common and shared Directories
- The conf Directory, and logs Directory. server directory, work Directory, temp Directory, web apps Directory
- Structure of the Web Application Directory Structure
- Deploying HTML and JSP Pages and Web Context
- JSP Page and the Generated Code
- Deploying a Web App
Configuring Tomcat
- Configuration of Tomcat and looking at the Techniques
- Tomcat's Component Architecture
- The Element, Element, Element, Element, Element, Element, Element, Element, Element, Element, Element
- Server.xml File
- Modifying server.xml
Web Applications
- Web Application Administration & Deploying
- Directory Structure of a Web App
- web.xml configuration file
- Deployment Descriptors
- The Element
- Mapping a Servlet to a URL
- The Element
- The Element
- The Element
- A Sample web.xml file
- Deploying a Web Application
- Tomcat's default conf/web.xml file
- Tuning default JSP and Static-content servlets
Tomcat Manager
- Deploying and Managing Web Applications using the Tomcat Manager
- Starting the Tomcat Manager and looking at Tomcat Manager
- Looking at the Manager Section
- Applications, Deploy, Server Information
- Creating a WAR File
- Lab 4: Deploying a WAR File
- Java Management Extensions (JMX) on Tomcat
- Tomcat integration with Ant
Advanced Features
- Using Some of the Advanced Features of Tomcat
- Valves, Access Log Valve, Single Sign-on Valve
- Remote Address Filter and Remote Host Filter
- Request Dumper Valve
- Configuring the JNDI Resources
- JNDI: Java Naming and Directory Interface and Defining a JNDI Resource
- The Element and the Element
- Configuring a Java Mail Session
- Global Resources
JDBC Connectivity
- Configuring Tomcat to Connect to a Database
- Overview of JDBC
- JDBC Drivers
- Connecting to a Database and Connection Pools
- Download and Install MySQL
- Configure MySQL for Tomcat
- Create a Database in MySQL
- Download and Deploy a JDBC Driver
- Defining a Data Source in Tomcat and Defining a Data Source Manually
- Modifying the Deployment Descriptor
- Detecting and closing leaked database connections
Tomcat Security
- Looking at Security on Tomcat and the configuration
- Security Considerations
- File System Security and Filesystem Recommendations
- Java Security Manager
- Granting Permissions to Java Apps and looking at Java Permissions
- Creating and Adding Your Own Policies
- Enabling the Java Security Manager
- Security Manager Tips and Security Realms
- Looking at the different Types of Realms and Configuring a Realm
- Users and Roles (authentication and authorization)
- Creating a Data Source Realm
- The protection of passwords
- FORM-based authentication
- Configuring Tomcat for SSL
- Requiring SSL in applications
Connecting
- Connect Tomcat to Apache
- Looking at Connectors
- HTTP Connectors
- Advantages of Using a Web Server
- Connector Protocols
- Configure an AJP Connector
- Download mod_jk
- Create the mod_jk.conf file
- Start Tomcat
- Create a Worker
- Configure httpd.conf
- Test the Setup
- Load balancing applications across multiple Tomcat instances
- Issues with load balancing
- Server affinity via sticky sessions
- Shared session storage
- Replicated sessions via Tomcat clustering
- Shared Hosting
- Tomcat Virtual Hosting
- Configure Tomcat to enable virtual hosting as a stand-alone server
- Configure Tomcat to enable virtual hosting using jk2 or webapp.
- Configure Tomcat as Stand-alone
- Configure Tomcat with AJP
- Separate JVM for Each Host
Load Testing
- JMeter Application
- Load Testing with JMeter
- Install and run JMeter
- Creating a Test Plan
- Configure the Thread Group and add a task
- Configure the HTTP Request
- Add a Report Listener
- Run the Test Plan
- Viewing the Results