溫馨提示×

centos里tomcat配置有哪些要點

小樊
46
2025-10-02 19:33:01
欄目: 智能運維

CentOS下Tomcat配置要點

1. Java環境配置

Tomcat依賴Java運行環境,需優先安裝JDK。推薦使用OpenJDK 11及以上版本(兼容性更好),通過yum包管理器安裝:

sudo yum install java-11-openjdk-devel -y

安裝后驗證版本:java -version,確保輸出包含Java版本信息。配置JAVA_HOME環境變量(編輯/etc/profile,添加export JAVA_HOME=/usr/lib/jvm/java-11-openjdk),并執行source /etc/profile使變量生效。

2. Tomcat安裝與基礎配置

  • 下載與解壓:從Apache Tomcat官網下載穩定版本(如Tomcat 9/10),解壓至/opt目錄(建議使用非root用戶操作):
    wget https://downloads.apache.org/tomcat/tomcat-9/v9.0.56/bin/apache-tomcat-9.0.56.tar.gz
    tar -zxvf apache-tomcat-9.0.56.tar.gz -C /opt/
    mv /opt/apache-tomcat-9.0.56 /opt/tomcat
    
  • 設置權限:創建專用用戶tomcat(避免以root運行),并設置目錄權限:
    sudo groupadd tomcat
    sudo useradd -M -s /bin/nologin -g tomcat -d /opt/tomcat tomcat
    sudo chown -R tomcat:tomcat /opt/tomcat
    sudo chmod +x /opt/tomcat/bin/*.sh
    
  • 開機自啟:創建Systemd服務文件/etc/systemd/system/tomcat.service,內容如下:
    [Unit]
    Description=Apache Tomcat Web Application Container
    After=network.target
    [Service]
    Type=forking
    Environment=JAVA_HOME=/usr/lib/jvm/java-11-openjdk
    Environment=CATALINA_PID=/opt/tomcat/temp/tomcat.pid
    Environment=CATALINA_HOME=/opt/tomcat
    Environment=CATALINA_BASE=/opt/tomcat
    Environment='CATALINA_OPTS=-Xms512M -Xmx1024M -server -XX:+UseParallelGC'
    Environment='JAVA_OPTS=-Djava.awt.headless=true -Dfile.encoding=UTF-8'
    ExecStart=/opt/tomcat/bin/startup.sh
    ExecStop=/opt/tomcat/bin/shutdown.sh
    User=tomcat
    Group=tomcat
    UMask=0007
    RestartSec=10
    Restart=always
    [Install]
    WantedBy=multi-user.target
    
    加載服務并啟動:sudo systemctl daemon-reload && sudo systemctl enable tomcat && sudo systemctl start tomcat。

3. 防火墻配置

開放Tomcat默認端口(8080),允許外部訪問:

sudo firewall-cmd --zone=public --add-port=8080/tcp --permanent
sudo firewall-cmd --reload

驗證端口開放:sudo firewall-cmd --zone=public --query-port=8080/tcp(返回yes表示成功)。

4. 內存調優

通過調整JVM參數優化Tomcat內存使用,主要修改CATALINA_OPTS(在/etc/systemd/system/tomcat.service/opt/tomcat/bin/catalina.sh中):

  • 堆內存-Xms512M(初始堆大?。?、-Xmx1024M(最大堆大?。?,根據服務器內存調整(建議不超過物理內存的70%);
  • 元空間(Java 8+替代永久代):-XX:MetaspaceSize=256M、-XX:MaxMetaspaceSize=512M;
  • 垃圾回收-XX:+UseG1GC(啟用G1垃圾回收器,適合大內存應用)。
    修改后重啟Tomcat使配置生效:sudo systemctl restart tomcat。

5. 線程池優化

編輯server.xml(位于/opt/tomcat/conf/),調整<Connector>標簽參數,提升并發處理能力:

  • maxThreads:最大線程數(默認200),建議設置為CPU核心數的2-4倍(如4核服務器設置為80-160);
  • minSpareThreads:最小空閑線程數(默認25),設置為maxThreads的10%-20%(如20-40);
  • acceptCount:最大排隊請求數(默認100),設置為maxThreads的1.5-2倍(如300);
  • protocol:使用NIO協議(org.apache.coyote.http11.Http11NioProtocol),提升I/O性能。
    示例配置:
<Connector port="8080" protocol="org.apache.coyote.http11.Http11NioProtocol"
           connectionTimeout="20000"
           redirectPort="8443"
           maxThreads="200"
           minSpareThreads="20"
           acceptCount="300" />

修改后重啟Tomcat。

6. 安全配置

  • 刪除默認應用:刪除webapps目錄下的docs、examples、manager等默認應用(避免潛在安全風險);
  • 隱藏版本信息:編輯server.xml中的<Connector>標簽,添加server="Apache"(隱藏Tomcat版本);
  • 禁用AJP協議:若未使用AJP(如反向隧道),注釋server.xml中的AJP連接器(<Connector port="8009" protocol="AJP/1.3" ... />)。

7. 日志管理

Tomcat日志位于$CATALINA_HOME/logs目錄(如/opt/tomcat/logs),主要包括:

  • catalina.out:標準輸出/錯誤日志(記錄應用運行信息);
  • localhost_access_log:訪問日志(記錄HTTP請求詳情)。
    定期檢查日志排查問題(如使用tail -f catalina.out實時查看),可通過logrotate工具實現日志輪轉(避免日志文件過大)。

0
亚洲午夜精品一区二区_中文无码日韩欧免_久久香蕉精品视频_欧美主播一区二区三区美女