Jetty和Tomcat的選擇:按場景而定
Jetty和Tomcat為目前全球範圍內最著名的兩款開源的webserver/servlet容器。由於它們的實現都遵循Java Servlet規範,一個Java Web應用部署於兩款容器的任意一個皆可。但選擇哪個更優?也許這得看場景。
近期很多人關注Jetty,也許主要是因為GAE放棄了Tomcat而選擇了Jetty。於是,以很直接的想法,Jetty更符合GAE的需求、即雲環境的需求,亦分散式環境的需求。
那Jetty與Tomcat比較,有哪差異呢? 自己簡單做了些調研,也請救了熟悉Tomcat和Jetty的朋友和師兄,得出以下結論:
1)Jetty更輕量級。這是相對Tomcat而言的。
由於Tomcat除了遵循Java Servlet規範之外,自身還擴充套件了大量JEE特性以滿足企業級應用的需求,所以Tomcat是較重量級的,而且配置較Jetty亦複雜許多。但對於大量普通網際網路應用而言,並不需要用到Tomcat其他高階特性,所以在這種情況下,使用Tomcat是很浪費資源的。這種劣勢放在分散式環境下,更是明顯。換成Jetty,每個應用伺服器省下那幾兆記憶體,對於大的分散式環境則是節省大量資源。而且,Jetty的輕量級也使其在處理高併發細粒度請求的場景下顯得更快速高效。
2)Jetty更靈活,體現在其可插拔性和可擴充套件性,更易於開發者對Jetty本身進行二次開發,定製一個適合自身需求的Web Server。
相比之下,重量級的Tomcat原本便支援過多特性,要對其瘦身的成本遠大於豐富Jetty的成本。用自己的理解,即增肥容易減肥難。
3)然而,當支援大規模企業級應用時,Jetty也許便需要擴充套件,在這場景下Tomcat便是更優的。
總結:Jetty更滿足公有云的分散式環境的需求,而Tomcat更符合企業級環境。
GAE放棄了Tomcat,選擇了Jetty,正是因為Jetty的體積和靈活性,Google可以更好地定製一個足夠小的Java Web Server為其GAE服務。
而Tomcat為滿足更多的企業級需求,增加了JEE特性,在服務企業級應用時,它的支援優於Jetty。然而,即使Tomcat效能略優於Jetty,但對於大多非企業級應用而言,配置複雜體積龐大的Tomcat顯得過於重量級。
正因為這個,實驗室的雲平臺實現便是把雲平臺本身的入口網站放在Tomcat內,而云臺託管的Java Web應該是部署在Jetty內的。
參考文章:
《 》(譯文: )
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/9399028/viewspace-1648914/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 必讀:常見場景的加密選擇加密
- Java選擇框和單選按鈕Java
- 微信小程式:社交場景下商家的必然選擇微信小程式
- 容器場景要選擇什麼 Linux 版本?Linux
- 面對不同的業務場景,選擇零碼還是低碼?
- heartbeat心跳線方案及生產場景選擇建議
- ElasticSearch(一)ElasticSearch的應用場景及為什麼要選擇ElasticSearch?Elasticsearch
- 說說你對選擇排序的理解?如何實現?應用場景?排序
- Jetty 的工作原理以及與 Tomcat 的比較JettyTomcat
- 根據應用場景合理選擇工業相機的解析度
- 如何選擇版本控制系統之二---Git的研發應用場景Git
- mongodb 使用場景和不使用場景MongoDB
- 七個生產案例告訴你BATJ為何選擇ElasticSearch!應用場景和優勢!BATElasticsearch
- js選擇物件和jq選擇物件的區別JS物件
- 打造數字化時代的“場景+管理”方案,特斯聯為什麼選擇SAP?
- HTML 單選按鈕實現 (性別選擇)(解讀)HTML
- element-ui的日期選擇框底部清空按鈕點選不關閉日期選擇框的實現辦法UI
- JQuery選擇器——可見性篩選選擇器和屬性篩選選擇器jQuery
- 圖床的選擇和使用圖床
- 電腦一定選擇高頻記憶體嗎?宏旺半導體認為要視情況而定記憶體
- Jetty的安裝、配置和使用Jetty
- 關於mybatis tomcat 和jetty啟動報 {dataSource-1} inited 錯誤的記錄MyBatisTomcatJetty
- Redux/Mobx/Akita/Vuex對比 - 選擇更適合低程式碼場景的狀態管理方案ReduxVue
- 自繪按鈕實現顏色選擇器
- SPM適用的場景和示例
- 特定的閂鎖和互斥場景
- CSS樣式中的後代選擇器和子代選擇器CSS
- CSS樣式中的通用選擇器和偽類選擇器CSS
- 更多場景、更多選擇,Milvus 新訊息佇列 NATS 瞭解一下佇列
- 影片直播原始碼,不同業務場景需選擇不同方案去快取資料原始碼快取
- FinBench:金融場景下的圖系統選型
- 探探社交、一對一交友APP不是偶然的選擇,而是社交市場的選擇APP
- 為什麼選擇用weblogic而不用tomcat?WebTomcat
- WebView 自定義長按選擇,實現收藏 / 分享選中文字。WebView
- [Unity UGUI]點選和長按UnityUGUI
- Tomcat高階配置(應用場景總結及示例)Tomcat
- 保險行業超融合產品選型和應用場景解析行業
- Kubernetes CNI 外掛選型和應用場景探討