-
connector
1.接收客戶端連接???
2.加工處理客戶端請求
每個Connector都將指定一個端口進行監(jiān)聽,分別負責(zé)對請求報文的解析和響應(yīng)報文組裝,解析過程生成Request對象,而組裝過程涉及Response對象。
如果將Tomcat整體比作一個巨大的城堡,那么Connector組件就是城堡的城門,每個人要進入城門就必須通過城門,它為人們進出城堡提供了通道。同時,一個城堡還可能有兩個或者多個城門,每個城門代表了不同的通道。
container
1.所有的子容器的父接口 ??
2.使用責(zé)任鏈設(shè)計模式?
3.包含四個子容器:Engine、Host、Context、Wrapper
責(zé)任鏈模式:使多個對象都有機會去處理同一個請求,從而避免請求的發(fā)送者和接收者之間的耦合關(guān)系,將這些對象連成一條鏈,并沿著這條鏈傳遞請求,直到有一個對象處理它為止。
Engine:用來管理多個站點,一個service最多只能由一個engine;
Host:代表一個站點,也可以叫虛擬主機,通過配置Host就可以添加站點。
Context:代表一個應(yīng)用程序,相當(dāng)于一個war包。
Wrapper:一個封裝了的servlet.
查看全部 -
1.Server 指整個Tomcat服務(wù)器,其中包含多個組件,主要負責(zé)管理和啟動各個service,同時監(jiān)聽8005端口發(fā)過來的shut down命令,用于關(guān)閉整個服務(wù)器。
?2.Service 是Tomcat封裝的用于對外提供完整的基于組件的web服務(wù),主要包括connector和container兩個核心組件和多個功能組件。各個service之間的獨立的,但是他們會共享同一個虛擬機資源。
?3.Connector 是Tomcat與外部世界的一個連接器,監(jiān)聽固定的端口,接收外部請求,然后將請求傳遞給container,并且將container的處理結(jié)果再返回給外部。?
4.Container 是一個servlet容器,內(nèi)部由多層容器組成,主要用于管理servlet 的生命周期,然后調(diào)用servlet 的相關(guān)方法去處理業(yè)務(wù)邏輯。
5.Jasper 是Tomcat的JSP的解析引擎,用于將JSP文件轉(zhuǎn)化成Java文件,并且編譯成.class文件。
6.Naming 其實是一個命名服務(wù),將名稱和對象聯(lián)系起來,使得可以用名稱去訪問對象。
7.Session 負責(zé)管理和創(chuàng)建session,session的持久化。可以自定義,并且支持session的集群。對于Tomcat而言,session是在服務(wù)器開辟的內(nèi)存空間。在開發(fā)中,經(jīng)常用session來存儲一些臨時的信息。
8.Loging 負責(zé)記錄相關(guān)的日志,包含訪問錯誤信息和一下運行信息。
9.JMX ?javase中的定義的一個技術(shù)規(guī)范,主要是為應(yīng)用程序,設(shè)備,系統(tǒng)等植入管理功能的框架。通過jmx可以遠程監(jiān)控Tomcat的運行狀況。
查看全部 -
Tomcat server 處理HTTP請求。
查看全部 -
tomcat的server.xml文件也可以配置多個虛擬主機,
相同域名不同端口可以通過增加service節(jié)點實現(xiàn),
不同的域名則可以同過增加host節(jié)點實現(xiàn)
查看全部 -
1、直接將新項目放進已經(jīng)啟動的tomcat中。tomcat會解壓并加載新項目。
2、配置server.xml中的HOST
<context debug="0" docBase="D:web\" path="demo01" reloadble="true"/>
debug:程序發(fā)生異常時,寫入日志文件中的詳細程度,數(shù)據(jù)越大,越詳細。
docBase:項目的絕對路徑或者相對路徑,如果時相對路徑。相對于webapps
path: 項目訪問的路徑,如例子表示:localhost:8080/demo01
查看全部 -
catalina中設(shè)置(E:\tomcats\tomcat-8\bin\catalina.bat第二行加入以下代碼)
JAVA_OPTS="-server -Xms=256m -Xmx512m -XX:metaspace=128m -XX:MaxMetaspaceSize=256m"查看全部 -
分配JVM內(nèi)存
查看全部 -
禁用tomcat管理界面:防止黑客通過tomcat管理界面對tomcat進行攻擊。
方法:將Root文件重命名,重新建一個空的Root文件。
查看全部 -
隱藏版本信息:防止黑客針對某一版本進行攻擊,需要將版本信息隱藏起來。
版本信息在tocat的lib目錄下的catalina.jar里的org.apache.catalina.util里的ServerInfo.properties文件里。
查看全部 -
tomcat安全配置:
1、初始化配置:
(1)關(guān)閉服務(wù)器端口;如果不改關(guān)閉端口或關(guān)閉命令,別人會通過端口號和命令關(guān)閉服務(wù),出于安全考慮,需要改變端口號或關(guān)閉命令。
(2)隱藏版本信息;
(3)禁用Tomcat管理頁面;
(4)自定義錯誤頁面;
(5)AJP端口管理;
(6)啟用cookie的HttpOnly;
查看全部 -
多域名訪問是為了提高資源利用率。
查看全部 -
單點登錄(Single Sign On),簡稱SSO,是指在多個應(yīng)用系統(tǒng)中,用戶只需要登錄一次就可以訪問所有相互信任的應(yīng)用系統(tǒng)。
單點登錄方式:
(1)以Cookie作為憑證媒介;
(2)通過jsop實現(xiàn);
(3)通過頁面重定向的方式實現(xiàn);
(4)使用第三方插件實現(xiàn),如CAS
CAS:開源的企業(yè)級單點登錄解決方案。
查看全部 -
圖片畫錯了吧?
查看全部 -
1、直接將新項目放進已經(jīng)啟動的tomcat中。tomcat會解壓并加載新項目。
2、配置server.xml中的HOST
<context debug="0" docBase="D:web\" path="demo01" reloadble="true"/>
debug:程序發(fā)生異常時,寫入日志文件中的詳細程度,數(shù)據(jù)越大,越詳細。
docBase:項目的絕對路徑或者相對路徑,如果時相對路徑。相對于webapps
path: 項目訪問的路徑,如例子表示:localhost:8080/demo01
reloadble:當(dāng)有文件變化時是否自動加載。true表示是。
3、在catalina中的localhost中穿件配置文件。
如創(chuàng)建文件demo2.xml。并在文件中輸入
<?xml?version="1.0"?encoding="UTF-8"?> <context?debug="0"?docBase="D:web\"?path="demo01"?reloadble="true"/>
啟動項目,訪問時localhost:8080/demo2
查看全部 -
catalina中設(shè)置,或在startup中配置
JAVA_OPTS="-server -Xms=256 -Xmx512m -XX:metaspace=128m -XX:MaxMetaspaceSize=256m"
查看全部
舉報