Servlet容器:Jetty和tomcat的比較

相同點:

  1. Tomcat和Jetty都是一種Servlet引擎,他們都支持標準的servlet規範和JavaEE的規範。
    不同點:
  2. 架構比較
    Jetty的架構比Tomcat的更爲簡單
    Jetty的架構是基於Handler來實現的,主要的擴展功能都可以用Handler來實現,擴展簡單。
    Tomcat的架構是基於容器設計的,進行擴展是需要了解Tomcat的整體設計結構,不易擴展。
  3. 性能比較
    Jetty和Tomcat性能方面差異不大
    Jetty可以同時處理大量連接而且可以長時間保持連接,適合於web聊天應用等等。
    Jetty的架構簡單,因此作爲服務器,Jetty可以按需加載組件,減少不需要的組件,減少了服務器內存開銷,從而提高服務器性能。
    Jetty默認採用NIO結束在處理I/O請求上更佔優勢,在處理靜態資源時,性能較高。
    Tomcat適合處理少數非常繁忙的鏈接,也就是說鏈接生命週期短的話,Tomcat的總體性能更高。
    Tomcat默認採用BIO處理I/O請求,在處理靜態資源時,性能較差。
  4. 其它比較
    Jetty的應用更加快速,修改簡單,對新的Servlet規範的支持較好。
    Tomcat目前應用比較廣泛,對JavaEE和Servlet的支持更加全面,很多特性會直接集成進來。

    總結
    Jetty 是一個開源的servlet容器,它爲基於Java的web容器,例如JSP和servlet提供運行環境。它的主要特性是:易用性,可擴展性及易嵌入性。
    可以把 Jetty 理解爲一個嵌入式的Web服務器,Jetty的運行速度較快,而且是輕量級的。Jetty的輕量級也使其在處理高併發細粒度請求的場景下顯得更快速高效。
    Jetty更靈活,體現在其可插拔性和可擴展性,更易於開發者對Jetty本身進行二次開發,定製一個適合自身需求的Web Server。
    重量級的Tomcat原本便支持過多特性,當支持大規模企業級應用時,Jetty也許便需要擴展,在這場景下Tomcat便是更優的。
    Jetty更滿足公有云的分佈式環境的需求,而Tomcat更符合企業級環境。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章