前言
在SpringBoot框架中,我們使用最多的是Tomcat,這是SpringBoot默認的容器技術,而且是內嵌式的Tomcat,同時,SpringBoot也支持Undertow容器,我們可以很方便的用Undertow替換Tomcat,而Undertow的性能和記憶體使用方面都優于Tomcat,那我們如何使用Undertow技術呢?本文將為大家細細講解,
SpringBoot中的Tomcat容器
SpringBoot可以說是目前最火的Java Web框架了,它將開發者從繁重的xml解救了出來,讓開發者在幾分鐘內就可以創建一個完整的Web服務,極大的提高了開發者的作業效率,Web容器技術是Web專案必不可少的組成部分,因為任Web專案都要借助容器技術來運行起來,在SpringBoot框架中,我們使用最多的是Tomcat,這是SpringBoot默認的容器技術,而且是內嵌式的Tomcat,推薦:最全面的Java面試網站
SpringBoot設定Undertow
對于Tomcat技術,Java程式員應該都非常熟悉,它是Web應用最常用的容器技術,我們最早的開發的專案基本都是部署在Tomcat下運行,那除了Tomcat容器,SpringBoot中我們還可以使用什么容器技術呢?沒錯,就是題目中的Undertow容器技術,SrpingBoot已經完全繼承了Undertow技術,我們只需要引入Undertow的依賴即可,如下圖所示,
配置好以后,我們啟動應用程式,發現容器已經替換為Undertow,那我們為什么需要替換Tomcat為Undertow技術呢?
本文已經收錄到Github倉庫,該倉庫包含計算機基礎、Java基礎、多執行緒、JVM、資料庫、Redis、Spring、Mybatis、SpringMVC、SpringBoot、分布式、微服務、設計模式、架構、校招社招分享等核心知識點,歡迎star~
Github地址
如果訪問不了Github,可以訪問gitee地址,
gitee地址
Tomcat與Undertow的優劣對比
Tomcat是Apache基金下的一個輕量級的Servlet容器,支持Servlet和JSP,Tomcat具有Web服務器特有的功能,包括 Tomcat管理和控制平臺、安全域管理和Tomcat閥等,Tomcat本身包含了HTTP服務器,因此也可以視作單獨的Web服務器,但是,Tomcat和ApacheHTTP服務器不是一個東西,ApacheHTTP服務器是用C語言實作的HTTP Web服務器,Tomcat是完全免費的,深受開發者的喜愛,
Undertow是Red Hat公司的開源產品, 它完全采用Java語言開發,是一款靈活的高性能Web服務器,支持阻塞IO和非阻塞IO,由于Undertow采用Java語言開發,可以直接嵌入到Java專案中使用,同時, Undertow完全支持Servlet和Web Socket,在高并發情況下表現非常出色,
我們在相同機器配置下壓測Tomcat和Undertow,得到的測驗結果如下所示:QPS測驗結果對比: Tomcat
Undertow
記憶體使用對比:
Tomcat
Undertow
通過測驗發現,在高并發系統中,Tomcat相對來說比較弱,在相同的機器配置下,模擬相等的請求數,Undertow在性能和記憶體使用方面都是最優的,并且Undertow新版本默認使用持久連接,這將會進一步提高它的并發吞吐能力,所以,如果是高并發的業務系統,Undertow是最佳選擇,
最后
SpingBoot中我們既可以使用Tomcat作為Http服務,也可以用Undertow來代替,Undertow在高并發業務場景中,性能優于Tomcat,所以,如果我們的系統是高并發請求,不妨使用一下Undertow,你會發現你的系統性能會得到很大的提升,
好東西應該要分享出來!我把自己學習計算機多年以來的書籍分享出來了,匯總到一個計算機經典編程書籍倉庫了,一共300多本,包括C語言、C++、Java、Python、前端、資料庫、作業系統、計算機網路、資料結構和演算法、機器學習、編程人生等,可以star一下,下次找書直接在上面搜索,倉庫持續更新中~
Github地址
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/550318.html
標籤:其他
下一篇:學習C語言的第一天