tomcat啟動時都幹了些什麼,下面是tomcat的一些啟動資訊
初始化http11 獲得connector物件
3、org.apache.catalina.startup.catalina load
初始化啟動程序
4、org.apache.catalina.core.standardservice start
啟動service
5、org.apache.catalina.core.standardengine start
啟動engine
contextlistener: contextinitialized() 初始context上下文
sessionlistener: contextinitialized() 初始session
啟動connector
9、org.apache.jk.common.channelsocket init
jk: ajp13 listening on /0.0.0.0:8009
10、org.apache.jk.server.jkmain start
jk running id=0 time=0/47 config=null
11、org.apache.catalina.startup.catalina start
tomcat啟動完成
經過這麼多的過程tomcat總算是啟動來了.其中我們最應該了解和知道的是第六步初始化context.那麼tomcat是如何初始化context呢.要想知道答案,我們不得不來看看web.xml.
*******context上下文的初始化
1、 初始context時的一些引數
2、載入listener
3、載入filter
4、載入servlet(load-on-startup)
listener filter servlet在初始化時載入,這些servlet是基礎的servlet,為系統後台的執行提供服務.listener和filter可以看做是特殊的servlet.
servlet的初始化分為兩個時機:初始化context時初始化、在需要呼叫時初始化。在初始化context時初始化的servlet,我們需要指定它的load-on-startup(數值越小,越先初始化)
*********在第七步初始化完session,如果有spring的配置檔案,這時候會載入srping的配置檔案,初始化spring ioc容器(會初始化所有的singleton="true"的bean)
Spring專案載入在Tomcat啟動時載入了兩次
今天開發專案的時候,發現tomcat載入了兩次專案。先交代一下開發環境 eclipse tomcat 7 首先排查了spring的配置檔案和web.xml檔案是否載入了兩次spring的容器,但是並沒有發現問題。隨後感覺像是tomcat的問題。隨後在網上找到了問題所在 問題原因 autodeploy...
啟動時檢查
dubbo 缺省會在啟動時檢查依賴的服務是否可用,不可用時會丟擲異常,阻止 spring 初始化完成,以便上線時,能及早發現問題,預設check true 可以通過check false 關閉檢查,比如,測試時,有些服務不關心,或者出現了迴圈依賴,必須有一方先啟動。另外,如果你的 spring 容器...
如何讓tomcat列印出啟動時的日誌
最好的解決方法是檢視tomcat的日誌資訊,通過日誌的顯示,即可以非常清楚的確定因為問題的原因,從而快速的解決問題。以tomcat5.5為例,tomcat5.5在預設情況下,並不會自動記錄日誌資訊,需要人為配置。1 在tomcat安裝目錄的common classes中建立乙個屬性檔案log4j.p...