天天看點

Jetty伺服器和Tomcat伺服器選型差別

由于公司項目部署使用的Jetty伺服器,由于以前使用webflux架構,使用NettyServer或者Tomcat伺服器進行項目部署,是以總結下Tomcat伺服器與Jetty的異同。

首先先談談Tomcat與Jetty的相同點:

1. Tomcat和Jetty都是一種Servlet引擎,他們都支援标準的servlet規範和JavaEE的規範。
           

下面介紹的是Tomcat與Jetty差別:

1.架構思想

Jetty的架構比Tomcat的更為簡單

Jetty的架構是基于Handler來實作的,主要的擴充功能都可以用Handler來實作,擴充簡單。

Tomcat的架構是基于容器設計的,進行擴充是需要了解Tomcat的整體設計結構,不易擴充。

 

2.性能方面

Jetty和Tomcat性能方面差異不大

Jetty可以同時處理大量連接配接而且可以長時間保持連接配接,适合于web聊天應用等等。

Jetty的架構簡單,是以作為伺服器,Jetty可以按需加載元件,減少不需要的元件,減少了伺服器記憶體開銷,進而提高伺服器性能。

Jetty預設采用NIO結束在處理I/O請求上更占優勢,在處理靜态資源時,性能較高

 

Tomcat适合處理少數非常繁忙的連結,也就是說連結生命周期短的話,Tomcat的總體性能更高。

Tomcat預設采用BIO處理I/O請求,在處理靜态資源時,性能較差。

 

3.其它方面

Jetty的應用更加快速,修改簡單,對新的Servlet規範的支援較好。

Tomcat目前應用比較廣泛,對JavaEE和Servlet的支援更加全面,很多特性會直接內建進來。