Tomcat的工作模式和運行模式


(1)工作模式

Tomcat作為servlet容器,有三種工作模式:

  • 1、獨立的servlet容器,servlet容器是web服務器的一部分;
  • 2、進程內的servlet容器,servlet容器是作為web服務器的插件和java容器的實現,web服務器插件在內部地址空間打開一個jvm使得java容器在內部得以運行。反應速度快但伸縮性不足;
  • 3、進程外的servlet容器,servlet容器運行於web服務器之外的地址空間,並作為web服務器的插件和java容器實現的結合。反應時間不如進程內但伸縮性和穩定性比進程內優;

進入Tomcat的請求可以根據Tomcat的工作模式分為如下兩類:

  • Tomcat作為應用程序服務器:請求來自於前端的web服務器,這可能是Apache, IIS, Nginx等;
  • Tomcat作為獨立服務器:請求來自於web瀏覽器;

(2)運行模式

常見於server.xml中的連接器類型通常有4種:

  1. HTTP連接器 2) SSL連接器 3) AJP 1.3連接器 4) proxy連接器

Tomcat Connector(連接器)有三種運行模式:

  • bio(blocking I/O)
    即阻塞式I/O操作,表示Tomcat使用的是傳統的Java I/O操作(即java.io包及其子包)。
    一個線程處理一個請求,缺點:並發量高時,線程數較多,浪費資源。
  • nio(new I/O)
    Java nio是一個基於緩沖區、並能提供非阻塞I/O操作的Java API,因此nio也被看成是non-blocking I/O的縮寫。它擁有比傳統I/O操作(bio)更好的並發運行性能。
    利用 Java 的異步請求 IO 處理,可以通過少量的線程處理大量的請求。
  • apr(Apache Portable Runtime/Apache可移植運行時)
    Tomcat將以JNI的形式調用Apache HTTP服務器的核心動態鏈接庫來處理文件讀取或網絡傳輸操作,從而大大地提高Tomcat對靜態文件的處理性能。Tomcat apr也是在Tomcat上運行高並發應用的首選模式。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM