Apache Tomcat 11.0.27 介绍与选型指南

介绍 Apache Tomcat 11.0.27:三条维护线的版本基准与规格矩阵、Catalina/Coyote/Jasper 核心架构、快速上手与限制,并与 Eclipse Jetty、Undertow 就许可、stars、版本节奏与兼容矩阵做量化对比。

Apache TomcatTomcat2026/10/18

Apache Tomcat 11.0.27 介绍与选型指南

一、信息基准

项目内容
查询日期2026-10-18
本次介绍版本Apache Tomcat 11.0.27(最新主线稳定版,2026-10-12 发布)
其他在维护线10.1.61(2026-10-12 发布)、9.0.123(2026-10-12 发布)
开源许可Apache License 2.0(官网首页原文:released under the Apache License version 2)

版本基准表(三条维护线并行,数据取自官网 whichversion 页支持矩阵与首页发布公告,均为 2026-10-18 实查):

版本线最新版Java 要求ServletJSPELWebSocketAuthentication规格平台
11.0.x(稳定,当前开发重点)11.0.2717 及以上6.14.06.02.23.1Jakarta EE 11
10.1.x(稳定)10.1.6111 及以上6.03.15.02.13.0Jakarta EE 10
9.0.x(稳定,javax 命名空间)9.0.1238 及以上4.02.33.01.1JASPIC 1.1Java EE 8

生命周期备注:官网 whichversion 页明确「End of support for Tomcat 9.0.x is expected no earlier than 31 March 2027」,且 9.0.x 停止支持后将以新的 9.1.x 分支提供延伸支持(9.1.x 不再提供 APR/Native 连接器);10.0.x 已于 2022-10-31 停止支持;8.5.x 已于 2024-03-31 停止支持并归档。

官方来源清单:

来源地址用途
官网首页https://tomcat.apache.org/三线最新版与发布日期公告
版本支持矩阵https://tomcat.apache.org/whichversion.html规格/JDK/EOL 矩阵
ASF 发行目录https://downloads.apache.org/tomcat/tomcat-9/10/11 目录核验
官方文档https://tomcat.apache.org/tomcat-11.0-doc/架构与使用文档
GitHub 同步仓库https://github.com/apache/tomcat开发侧同步(官方发行渠道仍为官网与 ASF 目录)
Apache 项目主页https://projects.apache.org/project.html?tomcat项目与许可信息

版本依据说明:官网首页发布公告「2026-10-12 Tomcat 11.0.27 Released / 10.1.61 Released / 9.0.123 Released」;downloads.apache.org/tomcat/ 下 tomcat-9(最高 v9.0.123)、tomcat-10(最高 v10.1.61)、tomcat-11(最高 v11.0.27)三个目录与之一致;whichversion 表中 Latest Released Version 列亦为 11.0.27/10.1.61/9.0.123。数据交叉一致。

二、软件概述

本文介绍的是 Apache Tomcat 11.0.27(2026-10-12 发布的 11.0.x 主线最新稳定版),同时覆盖同日发布的 10.1.61 与 9.0.123 两条维护线。Apache Tomcat 是目前最主流的开源 Servlet/JSP 运行时引擎与 Web 服务器:官网首页自述其为「an open source software implementation of the Java Servlet, JavaServer Pages, Java Expression Language and Java WebSocket technologies」,即 Java Servlet、JSP、EL 与 WebSocket 技术的开源实现,是 Jakarta EE(原 Java EE)Web 层规范的事实参考实现之一,长期被 Spring Boot 等主流框架选为默认内嵌运行时。

Tomcat 由 Apache 软件基金会 Jakarta 项目发展而来,现为核心顶级项目之一,采用 Apache License 2.0 许可。截至查询日,其 GitHub 同步仓库(github.com/apache/tomcat)页面显示 8,260 个 stars(官方发行渠道仍为 tomcat.apache.org 与 ASF 发行目录,GitHub 仓库为开发侧同步用途)。三条维护线的并行策略清晰:11.0.x 面向 Jakarta EE 11 最新规格,10.1.x 面向 Jakarta EE 10 主流生产环境,9.0.x 面向 javax 命名空间的存量应用,并已公告 9.0.x 支持期截止不早于 2027-03-31。

三、核心架构

3.1 核心组件(依据官方文档 tomcat.apache.org/tomcat-11.0-doc/)

  • Catalina:Servlet 运行时引擎,负责按 Servlet 规范装载与调度 Web 应用。
  • Coyote:连接器框架,支持 HTTP/1.1、HTTP/2 与 AJP 等协议,负责请求的接收与解析(HTTP/2 与 TLS 能力随各版本演进)。
  • Jasper:JSP 编译引擎,将 JSP 页面编译为 Servlet 执行。
  • Cluster:会话复制与集群组件,支持多节点会话共享。 -Realm:用户、角色与安全认证的抽象层,可对接数据库、目录服务等多种后端。

3.2 配置层级

server.xml 定义 Server → Service → Connector → Engine → Host → Context 的层级结构:Connector 监听端口并交给 Engine,Engine 按虚拟主机(Host)路由到具体应用(Context);配套的 web.xml、context.xml 分别提供全局与应用级默认配置。这一模型在 9/10/11 三条线中保持一致(详见官方文档 architecture 章节与配置参考章节)。

3.3 规格与 JDK 对应关系

Tomcat 各主版本严格绑定其实现的 Servlet 规格与命名空间:11.0.x 实现 Servlet 6.1(Jakarta EE 11),10.1.x 实现 Servlet 6.0(Jakarta EE 10),9.0.x 实现 Servlet 4.0(Java EE 8,javax.* 命名空间);应用代码的 import 命名空间必须与所选版本线匹配(jakarta.* 对 10/11 线,javax.* 对 9 线),跨线迁移需使用官方 Jakarta EE Migration Tool(downloads.apache.org/tomcat/ 目录下的 jakartaee-migration 组件)。

四、功能特性

  • 三线并行维护:新特性进 11.0.x,主流生产在 10.1.x,存量 javax 应用由 9.0.x 覆盖,升级路径清晰。
  • HTTP/2 支持:Coyote 提供 HTTP/2 协议支持,可与 TLS 组合提升前端接入效率(官方 9.0.123 发布公告中亦提及 Tomcat Native 相关的 OpenSSL 支持变化)。
  • 会话与集群:内置会话持久化、集群会话复制(Cluster 组件)。
  • 安全体系:Realm 认证授权、SecurityManager、内置 Valve 管道可插入访问日志/访问控制等处理逻辑。
  • 运维友好:JMX 管理接口、manager 应用(应用部署与会话管理)、静态资源默认缓存配置等(官方文档 manager 章节)。
  • 嵌入式使用:可作为嵌入式运行时集成于应用内(Spring Boot 默认内嵌即为 Tomcat),亦提供独立发行包部署。
  • 官方迁移工具:jakartaee-migration 工具辅助 javax → jakarta 字节码改写(ASF 发行目录分发,1.0.13 于 2026-10-05 发布)。

五、快速上手

以下步骤引自官方发行包约定与 RUNNING.txt 指引(本文未做本地实测)。

  1. 从官网下载页(tomcat.apache.org/download-11.cgi)或 ASF 发行目录获取 apache-tomcat-11.0.27.tar.gz 并解压:
tar xzf apache-tomcat-11.0.27.tar.gz
cd apache-tomcat-11.0.27
  1. 启动与停止(发行包内 RUNNING.txt 与 bin/ 脚本,Windows 用 .bat):
bin/startup.sh    # 启动,默认监听 8080
bin/shutdown.sh   # 停止
  1. 验证与部署:浏览器访问 http://localhost:8080/ 看到默认首页即运行正常;将自己的应用 WAR 放入 webapps/ 目录即自动部署。开发期可用 bin/catalina.sh run 前台运行观察日志。完整文档见 https://tomcat.apache.org/tomcat-11.0-doc/ 。

六、适用场景与限制

适用场景:

  • 传统 WAR 应用部署:Spring MVC/Boot(外置部署)、Struts、JSF 等以 Servlet 规范为基的应用首选运行时。
  • 内嵌运行时:Spring Boot 默认内嵌 Tomcat,微服务无需单独安装即可随应用交付。
  • 反向代理后端:与 Nginx 等组合承担动态请求处理,是业界最常见的前后端组合。
  • 多虚拟主机与中小规模集群:Host 级多站点托管 + Cluster 会话复制满足常规企业需求。

限制:

  • 不是完整 Jakarta EE 平台:不含 EJB、JMS、JPA 等(需完整 EE 平台应选 TomEE 或其他应用服务器)。
  • 9.0.x 支持期已公告不早于 2027-03-31 结束,javax 存量应用应规划向 10.1.x/11.0.x 的迁移。
  • 各版本线 JDK 要求不同(17+/11+/8+),升级版本线时需同步升级 JDK 并处理命名空间变更。
  • 单机默认配置面向通用场景,超高并发需按官方文档调优连接器与线程池参数。

七、同类选型对比

以下对比项的 stars 数为 2026-10-18 通过各自 GitHub 仓库页面实查,版本与日期取自各项目官方 releases.atom 或官网发布页。

维度Apache Tomcat 11.0.27Eclipse Jetty 12.1.14Undertow 2.4.4.Final
开源许可Apache-2.0EPL-2.0(仓库 LICENSE 文件)Apache-2.0
GitHub stars(2026-10-18 实查)8,2604,0993,759
最近发版11.0.27 / 10.1.61 / 9.0.123(均 2026-10-12,三线同日发版)12.1.14(2026-10-05)2.4.4.Final(2026-10-02)
版本节奏三条稳定线高频补丁,多年持续维护主线月度级发布,多版本线并行(EE 10/11 分线)稳定线滚动补丁
兼容/能力矩阵Servlet 6.1/6.0/4.0 三线全覆盖,独立部署与嵌入式皆可,生态兼容性最广,Spring Boot 默认内嵌Servlet 6.1(Jetty 12 EE 11 分线),以嵌入式见长,异步模型成熟,Eclipse 系Servlet 6.1(Undertow 2.4.x/新分支),WildFly 底层引擎,以低开销高吞吐见长,XNIO 非阻塞 IO

选型建议:追求生态兼容性与团队熟悉度、或运行传统 WAR 与 Spring Boot 应用,Tomcat 11.0.27(或按 JDK/命名空间约束选 10.1.x/9.0.x)仍是默认稳妥之选;以嵌入式、异步与轻量部署为重可选 Jetty;极致吞吐与低内存占用且熟悉 WildFly 体系可评估 Undertow。

八、参考链接