<kbd id="5sdj3"></kbd>
<th id="5sdj3"></th>

  • <dd id="5sdj3"><form id="5sdj3"></form></dd>
    <td id="5sdj3"><form id="5sdj3"><big id="5sdj3"></big></form></td><del id="5sdj3"></del>

  • <dd id="5sdj3"></dd>
    <dfn id="5sdj3"></dfn>
  • <th id="5sdj3"></th>
    <tfoot id="5sdj3"><menuitem id="5sdj3"></menuitem></tfoot>

  • <td id="5sdj3"><form id="5sdj3"><menu id="5sdj3"></menu></form></td>
  • <kbd id="5sdj3"><form id="5sdj3"></form></kbd>

    大公司禁止SpringBoot項目中使用Tomcat?

    共 1599字,需瀏覽 4分鐘

     ·

    2022-07-09 23:25

    來源:toutiao.com/article/6775476659416990212/

    前言

    在SpringBoot框架中,我們使用最多的是Tomcat,這是SpringBoot默認的容器技術,而且是內嵌式的Tomcat。同時,SpringBoot也支持Undertow容器,我們可以很方便的用Undertow替換Tomcat,而Undertow的性能和內存使用方面都優(yōu)于Tomcat,那我們如何使用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已經(jīng)完全繼承了Undertow技術,我們只需要引入Undertow的依賴即可,如下圖所示。

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

    那我們?yōu)槭裁葱枰鎿QTomcat為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ā)者的喜愛。

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

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

    • QPS測試結果對比:

    Tomcat

    Undertow

    • 內存使用對比:

    Tomcat

    Undertow

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

    最后

    SpingBoot中我們既可以使用Tomcat作為Http服務,也可以用Undertow來代替。Undertow在高并發(fā)業(yè)務場景中,性能優(yōu)于Tomcat。所以,如果我們的系統(tǒng)是高并發(fā)請求,不妨使用一下Undertow,你會發(fā)現(xiàn)你的系統(tǒng)性能會得到很大的提升。

    加小編微信,回復 40 白嫖40套 java/spring/kafka/redis/netty 教程/代碼/視頻 等


    掃二維碼,加我微信,回復:40

     注意,不要亂回復 

    沒錯,不是機器人
    記得一定要等待,等待才有好東西
    瀏覽 54
    點贊
    評論
    收藏
    分享

    手機掃一掃分享

    分享
    舉報
    評論
    圖片
    表情
    推薦
    點贊
    評論
    收藏
    分享

    手機掃一掃分享

    分享
    舉報

    <kbd id="5sdj3"></kbd>
    <th id="5sdj3"></th>

  • <dd id="5sdj3"><form id="5sdj3"></form></dd>
    <td id="5sdj3"><form id="5sdj3"><big id="5sdj3"></big></form></td><del id="5sdj3"></del>

  • <dd id="5sdj3"></dd>
    <dfn id="5sdj3"></dfn>
  • <th id="5sdj3"></th>
    <tfoot id="5sdj3"><menuitem id="5sdj3"></menuitem></tfoot>

  • <td id="5sdj3"><form id="5sdj3"><menu id="5sdj3"></menu></form></td>
  • <kbd id="5sdj3"><form id="5sdj3"></form></kbd>
    jiujiujiu999 | 青青草a国产v | sm视频网站 | 亚洲靠逼视频免费看 | 骚老太太AV |