在Debian上配置Tomcat資源限制主要有以下幾種方法:
使用cgroups(控制組)
sudo apt-get install cgroup-tools
sudo cgcreate -g cpu,memory:/tomcat
echo "50000" | sudo tee /sys/fs/cgroup/cpu/tomcat/cpu.cfs_quota_us
echo "1073741824" | sudo tee /sys/fs/cgroup/memory/tomcat/memory.limit_in_bytes
echo <PID> | sudo tee /sys/fs/cgroup/{cpu,memory}/tomcat/tasks
修改Tomcat啟動腳本(ulimit)
/etc/default/tomcatX
或/opt/tomcatX/bin/startup.sh
):ulimit -u 4096 -v 2097152
(限制用戶進程數4096、虛擬內存2GB)sudo systemctl restart tomcatX
通過systemd配置
/etc/systemd/system/tomcat.service
):[Service]
部分添加:MemoryMax=1G CPUQuota=50%
sudo systemctl daemon-reload && sudo systemctl restart tomcat
JVM參數調優
catalina.sh
(/usr/share/tomcatX/bin/
):export JAVA_OPTS="-Xms512m -Xmx1024m -XX:MaxMetaspaceSize=256m"
注意:需根據實際服務器資源調整參數,配置后通過top
、htop
等工具監控資源使用情況。