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