【簡(jiǎn)介:】一、tomcat損壞?tomact損壞可以刪除原有版本,重新下載一個(gè)二、Tomcat原理?tomcat服務(wù)器的工作原理可以概括為以下幾點(diǎn):1、Tomcat是運(yùn)行在JVM中的一個(gè)進(jìn)程。它定義為“中間件”,顧
一、tomcat損壞?
tomact損壞可以刪除原有版本,重新下載一個(gè)
二、Tomcat原理?
tomcat服務(wù)器的工作原理可以概括為以下幾點(diǎn):
1、Tomcat是運(yùn)行在JVM中的一個(gè)進(jìn)程。它定義為“中間件”,顧名思義是一個(gè)在Java項(xiàng)目與JVM之間的中間容器。
2、Web項(xiàng)目的本質(zhì),是一大堆的資源文件和方法。Web項(xiàng)目沒(méi)有入口方法(即main方法),這意味著Web項(xiàng)目中的方法不會(huì)自動(dòng)運(yùn)行起來(lái)。
Web項(xiàng)目部署進(jìn)Tomcat的webapp中的目的是很明確的,那就是希望Tomcat去調(diào)用寫好的方法去為客戶端返回需要的資源和數(shù)據(jù)。
3、Tomcat可以運(yùn)行起來(lái),并調(diào)用寫好的方法。那么,Tomcat一定有一個(gè)main方法。對(duì)于Tomcat而言,它并不知道用戶會(huì)有什么樣的方法,這些都只是在項(xiàng)目被部署進(jìn)webapp下后才確定的。
由此,可知Tomcat用到了Java的反射來(lái)實(shí)現(xiàn)類的動(dòng)態(tài)加載、實(shí)例化、獲取方法、調(diào)用方法。但是部署到Tomcat的中的Web項(xiàng)目必須是按照規(guī)定好的接口來(lái)進(jìn)行編寫,以便進(jìn)行調(diào)用。
三、tomcat底層原理?
Tomcat需要main方法啟動(dòng)。
Tomcat需要監(jiān)聽(tīng)本機(jī)上的某個(gè)端口。
Tomcat需要抓取此端口上來(lái)自客戶端的鏈接并獲得請(qǐng)求調(diào)用的方法與參數(shù)。
Tomcat需要根據(jù)請(qǐng)求調(diào)用的方法,動(dòng)態(tài)地加載方法所在的類,完成累的實(shí)例化并通過(guò)該實(shí)例獲得需要的方法最終將請(qǐng)求傳入方法執(zhí)行。
將結(jié)果返回給客戶端(jsp/html頁(yè)面、json/xml字符串)
四、tomcat的安裝?
完整的java環(huán)境配置:
我安裝的JDK是jdk-1_5_0_06-windows-i586-p版本:
雙擊運(yùn)行jdk-1_5_0_06-windows-i586-p.exe文件,進(jìn)行安裝,我的安裝目錄是:C:\Program Files\Java(你也可以自己設(shè)定)
安裝完成后在C:\Program Files\Java目錄下會(huì)產(chǎn)生兩個(gè)文件夾:jdk1.5.0_06和jre1.5.0_06
要配置三個(gè)系統(tǒng)環(huán)境變量:
1---->右鍵單擊"我的電腦",選中"屬性"并單擊,選擇"高級(jí)"選項(xiàng)卡,單擊下面的"環(huán)境變量"
2---->你會(huì)看到一個(gè)"用戶變量"和一個(gè)"系統(tǒng)變量",用戶變量只是針對(duì)當(dāng)前的用戶起作用的,
"系統(tǒng)變量"是針對(duì)登陸這臺(tái)計(jì)算機(jī)的所有用戶的,
3---->設(shè)置第一個(gè):單擊"系統(tǒng)變量"中的"新建"按鈕,在彈出的對(duì)話框的變量名中輸入CLASSPATH,在變量值中輸入.;
4---->設(shè)置第二個(gè):按照上面的步驟, 變量名中輸入JAVA_HOME,變量值中輸入jdk的路徑,我的是C:\Program Files\Java\jdk1.5.0_06,(你根據(jù)你的jdk的安裝路徑設(shè)置你的路徑)
5---->(注意)設(shè)置第三個(gè):你會(huì)發(fā)現(xiàn)你的系統(tǒng)變量里面有個(gè)Path變量了,那么選中它,單擊編輯按鈕
在后面加上;%JAVA_HOME%\bin即可,那么你的JDK就配置好了
(注意:最好是先安裝和配置了JDK,再安裝和運(yùn)行eclipse或者JCreator pro)
CLASSPATH
.;
JAVA_HOME
jdk的路徑(例如:C:\Program Files\Java\jdk1.5.0_06)
Path
;%JAVA_HOME%\bin
相當(dāng)與tomcat的home(可以不用配置)
CATALINA_HOME
F:\Program Files\tomcat-5.5.17
如果點(diǎn)擊tomcat的bin目錄下的startup.bat時(shí),界面一閃而過(guò),就要配置上述環(huán)境變量了.
五、tomcat關(guān)閉命令?
按下win+R鍵,輸入cmd,點(diǎn)擊確定輸入netstat –ano(注意:–ano前有個(gè)“空格”),按下回車鍵,可查詢所有的端口信息,我們找到8080的端口對(duì)應(yīng)的pid(占用進(jìn)程的id),例如這里pid為7440打開“啟動(dòng)任務(wù)管理器”(可右擊電腦下方任務(wù)欄的空白處),找到pid為7440的進(jìn)程,點(diǎn)擊結(jié)束進(jìn)程。
按下win+R鍵,輸入cmd,點(diǎn)擊確定輸入netstat -ano|findstr 8080,可查詢出8080端口的pid8080端口的進(jìn)程id是7440,輸入taskkill /pid 占用進(jìn)程的pid -f(在這里就是輸入taskkill /pid 7440 -f),按回車就可將進(jìn)程結(jié)束。
六、tomcat最大進(jìn)程?
當(dāng)一個(gè)進(jìn)程有 500 個(gè)線程在跑的話,那性能已經(jīng)是很低很低了。Tomcat 默認(rèn)配置的最大請(qǐng)求數(shù)是 150,也就是說(shuō)同時(shí)支持 150 個(gè)并發(fā),當(dāng)然了,也可以將其改大
當(dāng)某個(gè)應(yīng)用擁有 250 個(gè)以上并發(fā)的時(shí)候,應(yīng)考慮應(yīng)用服務(wù)器的集群
Windows 每個(gè)進(jìn)程中的線程數(shù)不允許超過(guò) 2000
Linux 每個(gè)進(jìn)程中的線程數(shù)不允許超過(guò) 1000
Tomcat的最大并發(fā)數(shù)是可以配置的,實(shí)際運(yùn)用中,最大并發(fā)數(shù)與硬件性能和CPU數(shù)量都有很大關(guān)系的。更好的硬件,更多的處理器都會(huì)使Tomcat支持更多的并發(fā)
maxThreads="1000" 最大并發(fā)數(shù)
minSpareThreads="100"///初始化時(shí)創(chuàng)建的線程數(shù)
maxSpareThreads="500"///一旦創(chuàng)建的線程超過(guò)這個(gè)值,Tomcat就會(huì)關(guān)閉不再需要的socket線程。
acceptCount="700"// 指定當(dāng)所有可以使用的處理請(qǐng)求的線程數(shù)都被使用時(shí),可以放到處理隊(duì)列中的請(qǐng)求數(shù),超過(guò)這個(gè)數(shù)的請(qǐng)求將不予處理
七、tomcat審計(jì)功能?
tomcat審計(jì)就是審計(jì)日志。
Tomcat審計(jì)能夠記錄的日志內(nèi)容:包括日期與事件、事件結(jié)果,觸發(fā)事件的用戶, 所有認(rèn)證機(jī)。它是一種通過(guò)client頁(yè)面不斷向服務(wù)端發(fā)送心跳,服務(wù)端通過(guò)線程來(lái)接收心跳和輪訓(xùn)來(lái)去超時(shí)注銷,從而記錄操作日志,保護(hù)審計(jì)日志。
八、tomcat工作原理?
1、Tomcat是運(yùn)行在JVM中的一個(gè)進(jìn)程。它定義為“中間件”,顧名思義是一個(gè)在Java項(xiàng)目與JVM之間的中間容器。
2、Web項(xiàng)目的本質(zhì),是一大堆的資源文件和方法。Web項(xiàng)目沒(méi)有入口方法(即main方法),這意味著Web項(xiàng)目中的方法不會(huì)自動(dòng)運(yùn)行起來(lái)。
Web項(xiàng)目部署進(jìn)Tomcat的webapp中的目的是很明確的,那就是希望Tomcat去調(diào)用寫好的方法去為客戶端返回需要的資源和數(shù)據(jù)。
3、Tomcat可以運(yùn)行起來(lái),并調(diào)用寫好的方法。那么,Tomcat一定有一個(gè)main方法。對(duì)于Tomcat而言,它并不知道用戶會(huì)有什么樣的方法,這些都只是在項(xiàng)目被部署進(jìn)webapp下后才確定的。
由此,可知Tomcat用到了Java的反射來(lái)實(shí)現(xiàn)類的動(dòng)態(tài)加載、實(shí)例化、獲取方法、調(diào)用方法。但是部署到Tomcat的中的Web項(xiàng)目必須是按照規(guī)定好的接口來(lái)進(jìn)行編寫,以便進(jìn)行調(diào)用。
九、tomcat啟動(dòng)原理?
tomcat服務(wù)器的工作原理可以概括為以下幾點(diǎn):
1、Tomcat是運(yùn)行在JVM中的一個(gè)進(jìn)程。它定義為“中間件”,顧名思義是一個(gè)在Java項(xiàng)目與JVM之間的中間容器。
2、Web項(xiàng)目的本質(zhì),是一大堆的資源文件和方法。Web項(xiàng)目沒(méi)有入口方法(即main方法),這意味著Web項(xiàng)目中的方法不會(huì)自動(dòng)運(yùn)行起來(lái)。
Web項(xiàng)目部署進(jìn)Tomcat的webapp中的目的是很明確的,那就是希望Tomcat去調(diào)用寫好的方法去為客戶端返回需要的資源和數(shù)據(jù)。
3、Tomcat可以運(yùn)行起來(lái),并調(diào)用寫好的方法。那么,Tomcat一定有一個(gè)main方法。對(duì)于Tomcat而言,它并不知道用戶會(huì)有什么樣的方法,這些都只是在項(xiàng)目被部署進(jìn)webapp下后才確定的。
由此,可知Tomcat用到了Java的反射來(lái)實(shí)現(xiàn)類的動(dòng)態(tài)加載、實(shí)例化、獲取方法、調(diào)用方法。但是部署到Tomcat的中的Web項(xiàng)目必須是按照規(guī)定好的接口來(lái)進(jìn)行編寫,以便進(jìn)行調(diào)用。
十、tomcat 自動(dòng)重啟?
tomcat 是一款開源的輕量級(jí) web 應(yīng)用服務(wù)器,因其配置簡(jiǎn)單,可擴(kuò)展性強(qiáng)和提供了強(qiáng)大的 API 編程接口,因此深受程序員喜愛(ài)。
tomcat 運(yùn)行時(shí)會(huì)從操作系統(tǒng)中申請(qǐng)配置文件里 min 參數(shù)指定的最小配額的內(nèi)存,運(yùn)行時(shí)根據(jù)客戶端請(qǐng)求,會(huì)動(dòng)態(tài)擴(kuò)展內(nèi)存。
如果擴(kuò)展后的內(nèi)存總數(shù)超過(guò)了配置文件 max 指定的內(nèi)存尺寸,tomcat 就會(huì)重啟。