環(huán)境:阿里云服務(wù)器 Ubuntu 14.04 硬盤20G 內(nèi)存1G
該服務(wù)器之前死部署官網(wǎng)的服務(wù)器,因其他原因 需要在tomcat服務(wù)中部署兩個(gè)項(xiàng)目
當(dāng)部署好項(xiàng)目以后,發(fā)現(xiàn)新增的項(xiàng)目運(yùn)行起來特別慢,top了一下 發(fā)現(xiàn)cpu在沒有訪問的時(shí)候占用率高達(dá)80%,應(yīng)該是tomcat分配的內(nèi)存有問題
果斷 登錄后臺(tái)修改tomcat內(nèi)存分配腳本
vim /usr/share/tomcat7/bin/catalina.sh
100行左右是否有java_OPTS變量,沒有的話添加如下:
JAVA_OPTS="-server -d64 -Djava.awt.headless=true -Xms512m -Xmx512m -XX:PermSize=256M -XX:MaxNewSize=256M -XX:MaxPermSize=256M"
詳情:
-server 一定要作為第一個(gè)參數(shù),啟用JDK的server版本,在多個(gè)CPU時(shí)性能佳-Xms java Heap初始大小。 默認(rèn)是物理內(nèi)存的1/64。-Xmx java heap最大值。建議均設(shè)為物理內(nèi)存的80%。不可超過物理內(nèi)存。-Xmn java heap最小值,一般設(shè)置為Xmx的3、4分之一。-XX:PermSize 設(shè)定內(nèi)存的永久保存區(qū)初始大小,缺省值為64M。-XX:MaxPermSize 設(shè)定內(nèi)存的永久保存區(qū)最大大小,缺省值為64M。-XX:SurvivorRatio=2 生還者池的大小,默認(rèn)是2。如果垃圾回收變成了瓶頸,您可以嘗試定制生成池設(shè)置-XX:NewSize 新生成的池的初始大小。 缺省值為2M。-XX:MaxNewSize 新生成的池的最大大小。 缺省值為32M。+XX:AggressiveHeap 讓jvm忽略Xmx參數(shù),瘋狂地吃完一個(gè)G物理內(nèi)存,再吃盡一個(gè)G的swap。-Xss 每個(gè)線程的Stack大小-verbose:gc 現(xiàn)實(shí)垃圾收集信息-Xloggc:gc.log 指定垃圾收集日志文件-XX:+UseParNewGC 縮短minor收集的時(shí)間-XX:+UseConcMarkSweepGC 縮短major收集的時(shí)間-XX:userParNewGC 可用來設(shè)置并行收集(多CPU)-XX:ParallelGCThreads 可用來增加并行度(多CPU)-XX:UseParallelGC 設(shè)置后可以使用并行清除收集器(多CPU)
重啟tomcat服務(wù) 再次訪問 速度變快了,CPU占用率下降為不到1%
新聞熱點(diǎn)
疑難解答
圖片精選