溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

SpringBoot中怎么設置Undertow

發(fā)布時間:2022-01-15 09:21:25 來源:億速云 閱讀:1082 作者:iii 欄目:開發(fā)技術

今天小編給大家分享一下SpringBoot中怎么設置Undertow的相關知識點,內容詳細,邏輯清晰,相信大部分人都還太了解這方面的知識,所以分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后有所收獲,下面我們一起來了解一下吧。

SpringBoot 中的 Tomcat 容器

SpringBoot 可以說是目前最火的 Java Web 框架了。它將開發(fā)者從繁重的 xml 解救了出來,讓開發(fā)者在幾分鐘內就可以創(chuàng)建一個完整的 Web  服務,極大的提高了開發(fā)者的工作效率。Web 容器技術是 Web 項目必不可少的組成部分,因為任 Web 項目都要借助容器技術來運行起來。

在 SpringBoot 框架中,我們使用最多的是 Tomcat,這是 SpringBoot 默認的容器技術,而且是內嵌式的 Tomcat。

SpringBoot 設置 Undertow

對于 Tomcat 技術,Java 程序員應該都非常熟悉,它是 Web 應用最常用的容器技術。我們最早的開發(fā)的項目基本都是部署在 Tomcat  下運行,那除了 Tomcat 容器,SpringBoot 中我們還可以使用什么容器技術呢?

沒錯,就是題目中的 Undertow 容器技術。SrpingBoot 已經完全繼承了 Undertow 技術,我們只需要引入 Undertow  的依賴即可,如下圖所示。

SpringBoot中怎么設置Undertow

SpringBoot中怎么設置Undertow

配置好以后,我們啟動應用程序,發(fā)現(xiàn)容器已經替換為 Undertow。

那我們?yōu)槭裁葱枰鎿Q Tomcat 為 Undertow 技術呢?

Tomcat 與 Undertow 的優(yōu)劣對比

Tomcat 是 Apache 基金下的一個輕量級的 Servlet 容器,支持 Servlet 和 JSP。Tomcat 具有 Web  服務器特有的功能,包括 Tomcat 管理和控制平臺、安全局管理和 Tomcat 閥等。Tomcat 本身包含了 HTTP 服務器,因此也可以視作單獨的 Web  服務器。

但是,Tomcat 和 ApacheHTTP 服務器不是一個東西,ApacheHTTP 服務器是用 C 語言實現(xiàn)的 HTTP Web 服務器。Tomcat  是完全免費的,深受開發(fā)者的喜愛。(2020年最新的常問企業(yè)面試題大全以及答案)

Undertow 是 Red Hat 公司的開源產品, 它完全采用 Java 語言開發(fā),是一款靈活的高性能 Web 服務器,支持阻塞 IO 和非阻塞  IO。由于 Undertow 采用 Java 語言開發(fā),可以直接嵌入到 Java 項目中使用。同時, Undertow 完全支持 Servlet 和 Web  Socket,在高并發(fā)情況下表現(xiàn)非常出色。

SpringBoot中怎么設置Undertow

我們在相同機器配置下壓測 Tomcat 和 Undertow,得到的測試結果如下所示:

QPS 測試結果對比:

Tomcat

SpringBoot中怎么設置Undertow

Undertow

SpringBoot中怎么設置Undertow

內存使用對比:

Tomcat

SpringBoot中怎么設置Undertow

Undertow

SpringBoot中怎么設置Undertow

通過測試發(fā)現(xiàn),在高并發(fā)系統(tǒng)中,Tomcat 相對來說比較弱。在相同的機器配置下,模擬相等的請求數(shù),Undertow 在性能和內存使用方面都是最優(yōu)的。并且  Undertow 新版本默認使用持久連接,這將會進一步提高它的并發(fā)吞吐能力。所以,如果是高并發(fā)的業(yè)務系統(tǒng),Undertow 是最佳選擇。

以上就是“SpringBoot中怎么設置Undertow”這篇文章的所有內容,感謝各位的閱讀!相信大家閱讀完這篇文章都有很大的收獲,小編每天都會為大家更新不同的知識,如果還想學習更多的知識,請關注億速云行業(yè)資訊頻道。

向AI問一下細節(jié)

免責聲明:本站發(fā)布的內容(圖片、視頻和文字)以原創(chuàng)、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI