Request Process Flow
Introduction
This page describes how requests flow through Tomcat during processing. Requests
start processing in an endpoint, then get passed to the protocol and then the
Coyote adapter which is the common entry point for all servlet request
processing.
The UML diagrams do not show every detail of Tomcat's internal processing. They
are intended to show the key elements of the processing chain.
Endpoint implementations
UML diagrams have been created for each Endpoint implementation to show how
requests flow from the endpoint to the protocol.
Diagram 1.1 shows how requests received via
an NIO based endpoint are processed upto the point they reach the processor
instance.
NIO2 - TBD.
Protocols
UML diagrams have been created for each protocol to show how requests flow from
the processor instance to the CoyoteAdapter.
Diagram 2.1 shows how HTTP/0.9, HTTP/1.0
and HTTP/1.1 requests are processed.
HTTP/2 - TBD.
AJP - TBD.
Servlet engine
Diagram 3.1 shows synchronous
Servlet requests are processed.
Asynchronous - TBD.
Authentication
Diagram 4.1 shows how BASIC
authentication is processed.
DIGEST - TBD.
FORM - TBD.
Jakarta Authentication (JASPIC) - TBD.