真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

Web服務(wù)器(Tomcat)高級(jí)優(yōu)化

Tomcat背景

成都網(wǎng)站建設(shè)哪家好,找創(chuàng)新互聯(lián)!專(zhuān)注于網(wǎng)頁(yè)設(shè)計(jì)、網(wǎng)站建設(shè)、微信開(kāi)發(fā)、小程序制作、集團(tuán)成都企業(yè)網(wǎng)站建設(shè)等服務(wù)項(xiàng)目。核心團(tuán)隊(duì)均擁有互聯(lián)網(wǎng)行業(yè)多年經(jīng)驗(yàn),服務(wù)眾多知名企業(yè)客戶(hù);涵蓋的客戶(hù)類(lèi)型包括:房屋鑒定等眾多領(lǐng)域,積累了大量豐富的經(jīng)驗(yàn),同時(shí)也獲得了客戶(hù)的一致贊譽(yù)!

自從JSP發(fā)布之后,推出了各式各樣的JSP引擎。Apache Group在完成GNUJSP1.0的開(kāi)發(fā)以后,開(kāi)始考慮在SUN的JSWDK基礎(chǔ)上開(kāi)發(fā)一個(gè)可以直接提供Web服務(wù)的JSP服務(wù)器,當(dāng)然同時(shí)也支持Servlet, 這樣Tomcat就誕生了。Tomcat是jakarta項(xiàng)目中的一個(gè)重要的子項(xiàng)目,其被JavaWorld雜志的編輯選為2001年度最具創(chuàng)新的Java產(chǎn)品,同時(shí)它又是sun公司官方推薦的servlet和jsp容器,因此其越來(lái)越多的受到軟件公司和開(kāi)發(fā)人員的喜愛(ài)。servlet和jsp的最新規(guī)范都可以在tomcat的新版本中得到實(shí)現(xiàn)。其次,Tomcat是完全免費(fèi)開(kāi)源的軟件,任何人都可以從互聯(lián)網(wǎng)上自由地下載。Tomcat與Apache的組合相當(dāng)完美。


湯姆貓

本章知識(shí)鏈路

Tomcat被譽(yù)為最好的web服務(wù)器,基本上每一位開(kāi)發(fā)人員(JAVA)都會(huì)使用,因此本章從以下幾個(gè)方面來(lái)講解,若文中有誤的地方大伙可以留言討論,一起研究研究。

  1. Tomcat之JVM內(nèi)存查看;
  2. Tomcat之啟動(dòng)優(yōu)化;
  3. Tomcat之并發(fā)優(yōu)化;
  4. Tomcat之內(nèi)存優(yōu)化;
  5. apache的ab壓力測(cè)試;
  6. Tomcat之BIO/NIO/APR的三大模式(略)。

tomcat思路

Tomcat之JVM內(nèi)存查看

此處我以tomcat6和tomcat7來(lái)進(jìn)行講解,tomcat7+ 配置、操作方法類(lèi)似。

  • Tomcat6的User配置:

Tomcat6配置

  • Tomcat7的User配置:

Tomcat7配置

  • 上述設(shè)置完成后:

本地訪問(wèn) /localhost:8080/manager/status

未優(yōu)化前信息

Tomcat之啟動(dòng)優(yōu)化

  • Linux中修改catalina.sh文件,windows中修改catalina.bat文件;內(nèi)容如下:

export JAVA_OPTS="

-server

-Xms1600M

-Xmx1600M

-Xss512k

-XX:+AggressiveOpts

-XX:+UseBiasedLocking

-XX:PermSize=128M

-XX:MaxPermSize=256M

-XX:+DisableExplicitGC

-XX:MaxTenuringThreshold=31

-XX:+UseConcMarkSweepGC

-XX:+UseParNewGC

-XX:+CMSParallelRemarkEnabled

-XX:+UseCMSCompactAtFullCollection

-XX:LargePageSizeInBytes=128m

-XX:+UseFastAccessorMethods

-XX:+UseCMSInitiatingOccupancyOnly

-Djava.awt.headless=true"

  • 檢查是否生效

Tomcat之并發(fā)優(yōu)化

  • 修改位置:

/opt/tomcat7/conf下的server.xml文件中節(jié)點(diǎn)的配置優(yōu)化,一定先備份。


  • 標(biāo)準(zhǔn)版優(yōu)化:

protocol="org.apache.coyote.http11.Http11NioProtocol"

maxThreads="600"

minSpareThreads="100"

maxSpareThreads="500"

acceptCount="700"

connectionTimeout="20000"

redirectPort="8443" />

  • 復(fù)雜版優(yōu)化:

protocol="HTTP/1.1"

URIEncoding="UTF-8"

minSpareThreads="25"

maxSpareThreads="75"

enableLookups="false"

disableUploadTimeout="true"

connectionTimeout="20000"

acceptCount="300"

maxThreads="300"

maxProcessors="1000"

minProcessors="5"

useURIValidationHack="false"

compression="on"

compressionMinSize="2048"

compressableMimeType="text/html,text/xml,text/JavaScript,text/css,text/plain"

redirectPort="8443"/>

Tomcat之內(nèi)存優(yōu)化

錯(cuò)誤排查:成都服務(wù)器托管

查看%TOMCAT_HOME%\logs文件夾下,日志文件是否有內(nèi)存溢出錯(cuò)誤

錯(cuò)誤提示一:java.lang.OutOfMemoryError: Java heap space

  • 產(chǎn)生原因:

Tomcat默認(rèn)可以使用的內(nèi)存為128MB,在較大型的應(yīng)用項(xiàng)目中,這點(diǎn)內(nèi)存是不夠的,有可能導(dǎo)致系統(tǒng)無(wú)法運(yùn)行。

常見(jiàn)的問(wèn)題是報(bào)Tomcat內(nèi)存溢出錯(cuò)誤,Out of Memory(系統(tǒng)內(nèi)存不足)的異常,從而導(dǎo)致客戶(hù)端顯示500錯(cuò)誤,

一般調(diào)整Tomcat的使用內(nèi)存即可解決此問(wèn)題。

  • 解決辦法:

Windows環(huán)境下修改:成都服務(wù)器托管

“%TOMCAT_HOME%\bin\ catalina.bat ”文件,在文件開(kāi)頭增加如下設(shè)置:成都服務(wù)器托管

JAVA_OPTS=-Xms2048m -Xmx2048m

Linux環(huán)境下修改:成都服務(wù)器托管

“%TOMCAT_HOME%\bin\ catalina.sh ”文件,在文件開(kāi)頭增加如下設(shè)置:成都服務(wù)器托管

JAVA_OPTS=-Xms2048m -Xmx2048m

錯(cuò)誤提示二:java.lang.OutOfMemoryError: PermGen space

  • 產(chǎn)生原因

PermGen space的全稱(chēng)是Permanent Generation space,是指內(nèi)存的永久保存區(qū)域,這塊內(nèi)存主要是被JVM存放Class和Meta信息的,Class在被Loader時(shí)就會(huì)被放到PermGen space中,它和存放類(lèi)實(shí)例(Instance)的Heap區(qū)域不同,GC(Garbage Collection)不會(huì)在主程序運(yùn)行期對(duì)PermGen space進(jìn)行清理,所以如果你的應(yīng)用中有很CLASS的話,就很可能出現(xiàn)PermGen space錯(cuò)誤,這種錯(cuò)誤常見(jiàn)在web服務(wù)器對(duì)JSP進(jìn)行pre-compile的時(shí)候。如果你的WEB APP下都用了大量的第三方j(luò)ar, 其大小超過(guò)了jvm默認(rèn)的大小(4M)那么就會(huì)產(chǎn)生此錯(cuò)誤信息了 。

  • 解決辦法:

Windows環(huán)境下修改:成都服務(wù)器托管

“%TOMCAT_HOME%\bin\ catalina.bat ”文件,在文件開(kāi)頭增加如下設(shè)置:成都服務(wù)器托管

set JAVA_OPTS=-Xms64m -Xmx256m -XX:PermSize=128M -XX:MaxNewSize=256m - XX:MaxPermSize=256m

Linux環(huán)境下修改:成都服務(wù)器托管

“%TOMCAT_HOME%\bin\ catalina.sh ”文件,在文件開(kāi)頭增加如下設(shè)置:成都服務(wù)器托管

export JAVA_OPTS=-Xms64m -Xmx256m -XX:PermSize=128M -XX:MaxNewSize=256m XX:MaxPermSize=256m

windows中修改位置:成都服務(wù)器托管


Apache的ab壓力測(cè)試

  • 下載httpd-2.2.29.tar.gz包
  • /opt下面解壓:httpd-2.2.29.tar.gz
  • 根目錄/下:

mkdir -p /usr/local/web/apache

  • /opt下進(jìn)入httpd-2.2.29文件夾:cd httpd-2.2.29
  • 安裝

./configure --prefix=/usr/local/web/apache --enable-shared=max --enable-module=rewirte --enable-module=so

make

make install

ab壓力測(cè)試開(kāi)始:成都服務(wù)器托管

  • 進(jìn)入/usr/local/web/apache/bin目錄下,執(zhí)行以下命令:

ab -n1000 -c100 /localhost:8080/

  • 報(bào)告說(shuō)明


附注

因時(shí)間有限,文章中細(xì)節(jié)應(yīng)用未在此體現(xiàn),大家閱讀時(shí)若有疑問(wèn)可以隨時(shí)留言討論。小編在這里致敬每一位技術(shù)人,大家辛苦啦!成都小程序開(kāi)發(fā)公司!成都小程序開(kāi)發(fā)公司!成都小程序開(kāi)發(fā)公司!成都小程序開(kāi)發(fā)公司


本文題目:Web服務(wù)器(Tomcat)高級(jí)優(yōu)化
轉(zhuǎn)載來(lái)源:http://weahome.cn/article/sghjs.html

其他資訊

在線咨詢(xún)

微信咨詢(xún)

電話咨詢(xún)

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部