讲师中心 微信公众号
AI工具推荐 视频效率加速

Linux 服务器部署 Tomcat 集群实现高可用 Web 部署

千敏姑娘_6461

千敏姑娘_6461

发布时间:2026-06-30 08:24:40

|

657人浏览过

|

来源于php中文网

原创

Linux部署Tomcat集群实现高可用需三要素协同:多节点、会话复制与前端负载均衡;须统一JDK/Tomcat版本、时间同步、端口隔离及jvmRoute标识;启用SimpleTcpCluster并配置<distributable/>;Nginx作负载均衡,结合健康检查与Keepalived提升可靠性。

linux 服务器部署 tomcat 集群实现高可用 web 部署

Linux 上部署 Tomcat 集群实现高可用,核心在于**多节点 + 会话复制 + 前端负载均衡**三者协同。单靠多个 Tomcat 实例并不构成高可用,必须确保请求可自动分发、会话不丢失、故障时无缝切换。

基础环境统一配置

所有节点需保持高度一致,避免因环境差异引发集群通信失败或会话不同步:

  • 安装相同版本 JDK(推荐 OpenJDK 11 或 17),通过 java -version 和 $JAVA_HOME 确认;
  • 使用同一版本 Tomcat(如 9.0.56 或 10.1.x),解压至统一路径(如 /opt/tomcat);
  • 所有节点执行 ntpdate pool.ntp.org 或启用 chronyd 同步时间,偏差超过 5 秒可能影响集群心跳判定;
  • 关闭防火墙或放行关键端口:应用端口(如 8080/8081)、AJP 端口(如 8009/8010)、集群通信端口(默认 receiver port=4000,组播 port=45564)。

Tomcat 多实例端口与集群标识隔离

在同一台物理机或虚拟机部署多个 Tomcat 实例时,必须区分各组件端口并设置唯一集群身份:

Linux installer
Linux installer

先解析安全源,运行本地CLI安装、启动、卸载Linux桌面应用。用户请求时使用。

下载
  • 修改 conf/server.xml 中的 <Server port="8005">(关闭端口),如实例1用 8005,实例2用 8006;
  • 调整 HTTP Connector 端口:<Connector port="8080"> → 实例1用 8080,实例2用 8081;
  • 设置 AJP 端口(供 Nginx/Haproxy 反向代理):<Connector port="8009" protocol="AJP/1.3"> → 实例1用 8009,实例2用 8010;
  • 在 <Engine> 标签中添加唯一 jvmRoute,如 <Engine name="Catalina" defaultHost="localhost" jvmRoute="tomcat1">,该值后续需与负载均衡器配置对齐。

启用内置 TCP 集群与会话复制

Tomcat 自带 SimpleTcpCluster,无需额外中间件即可实现 Session 跨节点同步,适用于局域网内稳定环境:

  • 在每个实例的 conf/server.xml 的 <Engine> 内插入完整 <Cluster> 块;
  • 组播地址(<Membership>)需全集群一致,如 address="228.0.0.4"、port="45564";
  • <Receiver> 的 port="4000" 必须各节点不同(若单机多实例),或设为 auto 让 Tomcat 自动分配;
  • 推荐使用 DeltaManager(默认)处理增量 Session 复制,比 BackupManager 更轻量;
  • 务必在 Web 应用的 WEB-INF/web.xml 中添加 <distributable/> 标签,否则 Session 不参与复制。

前端负载均衡与健康检查

Nginx 是最常用且轻量的选择,负责流量分发、节点探测和故障摘除:

  • 配置 upstream 指向各 Tomcat AJP 或 HTTP 地址,并绑定对应 jvmRoute 值,例如:
    upstream backend { server 192.168.1.10:8009 weight=1 max_fails=3 fail_timeout=30s; server 192.168.1.11:8009 weight=1 max_fails=3 fail_timeout=30s; }
  • 启用 ip_hash 可保障同一客户端始终路由到同一节点(适合未开启会话复制的场景),但开启会话复制后建议用 least_conn 或默认轮询;
  • 添加健康检查路径(如 /health),并在 Tomcat 应用中返回 HTTP 200,Nginx 通过 health_check 指令自动剔除不可用节点;
  • 若需更高可靠性,可在 Nginx 层再叠加 Keepalived 实现双机热备,避免单点故障。

热门AI工具

更多
Laper
Laper Hot

Laper是专为编剧、导演和制片人推出的 AI 原生剧本创作工具。

切问学术

切问学术是一款AI论文写作工具,复旦大学NLP团队推出的AI学术智能体。

UP简历
UP简历 Hot

一款AI办公效率工具,主要用于基于AI技术的免费在线简历制作工具,适合需要提升相关任务效率的用户。

立刻MV
立刻MV Hot

立刻MV是一款AI文本写作工具,AI 音乐视频(MV)创作工具。

DeepSeek

DeepSeek是一款面向对话、写作、编程和推理场景的AI大模型工具。

豆包大模型

豆包大模型是一款由字节跳动推出的企业级大语言模型服务平台。

超级简历WonderCV

一款AI办公效率工具,主要用于免费求职简历模版下载制作,应届生职场人必备简历制作神器,适合需要提升相关任务效率的用户。

讯飞智作

讯飞智作是一款AI视频创作工具,AI文本配音工具,数字人课程、营销视频制作。

WorkBuddy

一款AI办公效率工具,主要用于腾讯云推出的AI原生桌面智能体工作台,适合需要提升相关任务效率的用户。

相关专题

更多
服务器是什么
服务器是什么

服务器是一种计算机硬件设备或软件程序,它具有强大的计算和存储能力,用请求、存储数据和提供服务。它在互联网中着关重要的作用,为用户提供各种服务和资源。本专题为大家提供服务器相关的文章、下载、课程内容,供大家免费下载体验。

437

2023.08.15

连接apple id服务器时出错
连接apple id服务器时出错

连接apple id服务器时出错的原因包括网络连接问题、服务器问题、Apple ID账户问题、设备问题、防火墙或安全软件问题、时间和日期设置问题、Apple服务器维护等。本专题为大家提供apple id相关的文章、下载、课程内容,供大家免费下载体验。

900

2023.09.08

搭建互联网服务器
搭建互联网服务器

搭建互联网服务器需要:1、选择合适的硬件和操作系统,第一步是选择合适的硬件和操作系统;2、安装和配置操作系统,是搭建互联网服务器的关键步骤;3、安装和配置服务器软件,是搭建互联网服务器的下一步,常见的服务器软件包括Apache、Nginx、Tomcat等;4、配置防火墙和安全性,是搭建互联网服务器的重要步骤;5、域名解析和配置,是搭建互联网服务器的最后一步。

2732

2023.09.19

如何查看服务器状态
如何查看服务器状态

查看服务器状态的方法有使用命令行工具、图形界面工具、监控工具、日志文件和远程管理工具等。本专题为大家提供服务器状态相关的文章、下载、课程内容,供大家免费下载体验。

916

2023.10.09

服务器域名转接慢怎么解决
服务器域名转接慢怎么解决

服务器域名转接慢的解决办法有DNS优化、服务器优化、CDN加速、前端优化和网络优化等。本专题为大家提供服务器相关的文章、下载、课程内容,供大家免费下载体验。

829

2023.10.17

服务器评测软件
服务器评测软件

服务器评测软件有PassMark Software、CPU-Z、GPU-Z、CrystalDiskMark、IOmeter、JMeter、LoadRunner、Apache Bench等等。详细介绍:1、PassMark Software是一款综合性的服务器性能测试软件,可以评估服务器在各种负载条件下的性能;2、CPU-Z是一款可以提供服务器CPU详细信息的软件等等。

414

2023.10.17

如何开启TFTP服务器
如何开启TFTP服务器

开启TFTP服务器的步骤包括选择TFTP服务器软件、下载和安装软件、配置TFTP服务器以及启动和测试服务器等。本专题为大家提供服务器相关的文章、下载、课程内容,供大家免费下载体验。

2476

2023.10.18

服务器负载不兼容怎么解决
服务器负载不兼容怎么解决

解决方法:1、增加服务器资源;2、负载均衡;3、优化应用程序;4、增加缓存机制;5、分布式架构;6、限流和熔断;7、自动化扩容。想知道更详细服务器负载不兼容的解决方法,可以访问本专题下面的文章。

4612

2023.10.20

FrankenPHP集成Laravel详细教程
FrankenPHP集成Laravel详细教程

本专题提供FrankenPHP集成Laravel的详细配置指南,全面解析运行原理、开发环境搭建、Caddyfile配置、Octane工作模式、数据库连接、队列任务、定时任务和生产环境优化,解决部署过程中常见的报错与兼容性问题。

0

2026.10.08

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
Tomcat核心原理解析
Tomcat核心原理解析

共57课时 | 8.8万人学习

nginx手册
nginx手册

共0课时 | 0人学习

关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn