單台 Linux 伺服器因資源限制或專案隔離需求,常需同時運行多個 Tomcat 實例。關鍵在於修改 server.xml 中的三組連接埠(HTTP、Shutdown、AJP),避免衝突。本文以 ZIP 版 Tomcat 為例,詳細說明修改位置、建議數值與驗證步驟,助您輕鬆實現多實例部署。
JAVA_HOME。apache-tomcat-9.0.x.tar.gz),解壓至兩個目錄:/opt/tomcat-instance1/opt/tomcat-instance2conf/server.xml<Connector port="8080" protocol="HTTP/1.1" ... /><Connector port="8081" protocol="HTTP/1.1" ... /><Server port="8005" shutdown="SHUTDOWN"><Server port="8006" shutdown="SHUTDOWN"><Connector port="8009" protocol="AJP/1.3" ... /><Connector port="8010" protocol="AJP/1.3" ... />conf/web.xml:若部署同一 Webapp 不同版本,注意 session-config、context-param 隔離。bin/setenv.sh:設定各實例專屬 CATALINA_OPTS(記憶體、GC、JMX 埠),避免 JMX 埠衝突。CATALINA_OPTS="-Xms512m -Xmx1024m -Dcom.sun.management.jmxremote.port=9001"logs/、temp/、work/ 目錄,或透過 CATALINA_BASE 環境變數指向實例目錄。/opt/tomcat-instance1/bin/startup.sh/opt/tomcat-instance2/bin/startup.shnetstat -ntlp | grep -E '8080|8081|8005|8006|8009|8010'https://:8080/ (實例 1)https://:8081/ (實例 2)/opt/tomcat-instance1/bin/shutdown.sh(連接 8005)/opt/tomcat-instance2/bin/shutdown.sh(連接 8006)建立 /etc/systemd/system/tomcat@.service 模板,透過 systemctl start tomcat@instance1 統一管理,實現開機自啟、自動重啟、日誌集中。
核心原則:每個實例獨立 CATALINA_BASE、獨立三大埠、獨立 JMX 埠、獨立記憶體設定。遵循此原則,單台伺服器可穩定運行數十個 Tomcat 實例。
Windows 自帶功能保護隱私八大絕招:徹底刪除、關閉最近檔案、隱藏文件清單、清理暫存檔
電腦攝像頭無法使用?USB/內建雙軌排查指南:線材、驅動、設定一次搞定
Windows 網路連線切換失效修復:Cryptographic Services 服務與 CatRoot2 資料庫重建實戰
開機自動開啟數字小鍵盤三大法:BIOS 設定、註冊表 InitialKeyboardIndicators、Config.sys NumLock=ON
Windows 批次腳本一鍵切換多組固定 IP / DHCP / DNS 設定