在 Debian 下搭建 Tomcat 集群,通常目标有两个:
下面给你一套常见、实用的方案,从简单到完整。
|
Nginx / Apache
|
+--------+--------+
| |
Tomcat1 Tomcat2
| |
+--- Session -----+
sudo apt update
sudo apt install tomcat9 tomcat9-admin
如果用多台机器,每台都装同样版本 Tomcat
sudo apt install nginx
sudo nano /etc/nginx/conf.d/tomcat_cluster.conf
upstream tomcat_cluster {
server 192.168.1.101:8080;
server 192.168.1.102:8080;
}
server {
listen 80;
server_name example.com;
location / {
proxy_pass http://tomcat_cluster;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
}
}
sudo nginx -t
sudo systemctl restart nginx
✅ 优点
❌ 问题
适合 小规模集群(2~4台)
server.xml<Cluster className="org.apache.catalina.ha.tcp.SimpleTcpCluster"/>
web.xml<distributable/>
✅ 优点:简单
❌ 缺点:节点多时性能差
适合 中大型集群
sudo apt install redis-server
tomcat-redis-session-manager✅ 优点
如果 不复制 Session,可用:
upstream tomcat_cluster {
ip_hash;
server 192.168.1.101:8080;
server 192.168.1.102:8080;
}
✅ 用户始终访问同一台 Tomcat
❌ 机器宕机 → 会话丢失
✅ 推荐组合
✅ 避免
我可以给你:
server.xml 示例你现在是 几台机器?什么应用(普通 JSP / Spring)?