小男孩‘自慰网亚洲一区二区,亚洲一级在线播放毛片,亚洲中文字幕av每天更新,黄aⅴ永久免费无码,91成人午夜在线精品,色网站免费在线观看,亚洲欧洲wwwww在线观看

分享

熱門(mén)Java應(yīng)用服務(wù)器對(duì)比|Tomcat、Jetty、 GlassFish、WildFly

 老張的菜地 2019-09-03

原創(chuàng)于【模棱博客】 http://www.

Tomcat vs. Jetty vs. GlassFish vs. WildFly

如果要編寫(xiě)Java Web應(yīng)用程序,首先需要做的是做出一個(gè)困難的決定, 我們?cè)撨x擇哪種服務(wù)器來(lái)運(yùn)行Java應(yīng)用程序呢?這是一個(gè)艱難的選擇,因?yàn)槟抢镉性S多優(yōu)秀的選擇,它們之間的差異并不總是顯而易見(jiàn)的。

首先回顧下什么是應(yīng)用程序服務(wù)器?一般來(lái)說(shuō),應(yīng)用服務(wù)器執(zhí)行Java應(yīng)用程序。您可以在操作系統(tǒng)中啟動(dòng)它們,然后將應(yīng)用程序部署到它們中。將應(yīng)用程序服務(wù)器視為運(yùn)行Java代碼并使其正常運(yùn)行的容器。此外,應(yīng)用程序服務(wù)器還提供了一些可在您自己的代碼中使用的通用基礎(chǔ)結(jié)構(gòu)和功能。

在本文中,我將介紹最流行的免費(fèi)和開(kāi)源Java應(yīng)用程序服務(wù)器之間的高級(jí)別比較。

Tomcat

熱門(mén)Java應(yīng)用服務(wù)器對(duì)比|Tomcat、Jetty、 GlassFish、WildFly

Tomcat是Apache Software Foundation開(kāi)發(fā)的與Java Web應(yīng)用程序一起使用的最流行的應(yīng)用程序服務(wù)器。Tomcat的市場(chǎng)份額占到了所有Java應(yīng)用服務(wù)器部署的60%。

然而,關(guān)于Tomcat作為應(yīng)用服務(wù)器的優(yōu)點(diǎn),存在一些混淆(甚至是爭(zhēng)議)。在技術(shù)上稱它為應(yīng)用服務(wù)器……事實(shí)并非如此。

讓我解釋。還記得當(dāng)我說(shuō)應(yīng)用服務(wù)器為你的應(yīng)用程序提供一些基礎(chǔ)設(shè)施和功能嗎?嗯,這套功能并不是隨意的。稱為Java EE的規(guī)范精確定義了應(yīng)用程序服務(wù)器的功能。因此,嚴(yán)格地說(shuō),我應(yīng)該只調(diào)用名稱應(yīng)用程序服務(wù)器通過(guò)Java EE兼容性測(cè)試的容器。截至今天,Oracle也列出了三個(gè)這樣的容器。

Oracle已將Java EE轉(zhuǎn)移到Eclipse Foundation,現(xiàn)在它在Java EE 8之后被稱為Jakarta EE。此外,現(xiàn)在還有一個(gè)完整EE平臺(tái)的Web Profile子集,以及一個(gè)僅支持servlet的Web容器。

實(shí)際上,Tomcat沒(méi)有實(shí)現(xiàn)Java EE應(yīng)用程序服務(wù)器所需的所有功能。Tomcat的準(zhǔn)確標(biāo)題是“web服務(wù)器”或“servlet容器”。但即使Tomcat不支持開(kāi)箱即用的某些Java EE功能,您仍然可以使用大多數(shù)這些功能。您只需將它們作為應(yīng)用程序中的其他第三方依賴項(xiàng)包含在內(nèi)。

因此,Tomcat是成熟的,文檔齊全的,也是使用最廣泛的Java應(yīng)用程序服務(wù)器。憑借良好的文檔以及在互聯(lián)網(wǎng)上關(guān)于它的教程,Tomcat幾乎在所有Java Web應(yīng)用程序中都是應(yīng)用服務(wù)器中最有利的競(jìng)爭(zhēng)者。

Jetty

熱門(mén)Java應(yīng)用服務(wù)器對(duì)比|Tomcat、Jetty、 GlassFish、WildFly

Jetty 是另一個(gè)應(yīng)用程序服務(wù)器(由Eclipse Foundation開(kāi)發(fā)),從技術(shù)上講,它不是一個(gè)功能齊全的Java EE容器。就像Tomcat一樣,它缺乏對(duì)許多Java EE功能的支持。就像Tomcat一樣,您仍然可以通過(guò)添加其他第三方依賴項(xiàng)來(lái)使用大多數(shù)功能。

雖然Jetty的市場(chǎng)份額遠(yuǎn)不及Tomcat的市場(chǎng)份額,但它仍然廣泛應(yīng)用于行業(yè)。它的兩個(gè)主要賣點(diǎn)是緊湊和占地面積小。兩者都使Jetty非常適合受限環(huán)境和嵌入其他產(chǎn)品。

GlassFish

熱門(mén)Java應(yīng)用服務(wù)器對(duì)比|Tomcat、Jetty、 GlassFish、WildFly

GlassFish是由Oracle開(kāi)發(fā)的功能齊全且經(jīng)過(guò)認(rèn)證的Java EE應(yīng)用服務(wù)器。因此,GlassFish比Tomcat或Jetty更重量級(jí),并且可以說(shuō),操作起來(lái)有點(diǎn)困難。

事實(shí)上,GlassFish不僅僅是一個(gè)通用的Java EE應(yīng)用服務(wù)器。它是Java EE標(biāo)準(zhǔn)的參考實(shí)現(xiàn)。這意味著GlassFish用于展示Java EE功能,它得到了定義Java EE標(biāo)準(zhǔn)的貢獻(xiàn)。因此,GlassFish將始終首先支持最新的Java EE功能。這是一個(gè)加分項(xiàng)。

GlassFish的缺點(diǎn)是缺乏商業(yè)支持。是的,這篇文章是關(guān)于免費(fèi)和開(kāi)源應(yīng)用服務(wù)器的,但這仍然是一個(gè)重點(diǎn)。隨著項(xiàng)目的發(fā)展和財(cái)務(wù)上的成功,您可能愿意為應(yīng)用程序服務(wù)器獲得長(zhǎng)期支持,安全更新,客戶支持等。這就是商業(yè)支持所提供的,許多公司都會(huì)購(gòu)買它。因此請(qǐng)記住,如果您將來(lái)使用GlassFish并需要商業(yè)支持,則需要遷移到完全不同的應(yīng)用程序服務(wù)器。

WildFly

熱門(mén)Java應(yīng)用服務(wù)器對(duì)比|Tomcat、Jetty、 GlassFish、WildFly

WildFly,以前稱為JBoss Application Server,由紅帽 (Red Hat)開(kāi)發(fā),是另一個(gè)功能齊全且經(jīng)過(guò)認(rèn)證的應(yīng)用服務(wù)器。

WildFly相對(duì)于GlassFish的最大優(yōu)勢(shì)是Red Hat提供了從WildFly到其商業(yè)支持的應(yīng)用服務(wù)器JBoss企業(yè)應(yīng)用程序平臺(tái)的簡(jiǎn)單遷移路徑。這意味著您可以立即使用WildFly,并在將來(lái)快速遷移到JBoss EAP,以獲得商業(yè)支持,如果您確定需要的話。

熱門(mén)Java應(yīng)用服務(wù)器對(duì)比|Tomcat、Jetty、 GlassFish、WildFly

我們?cè)撊绾芜x擇應(yīng)用程序服務(wù)器

這是一個(gè)細(xì)致入微的問(wèn)題。說(shuō)實(shí)話,答案因項(xiàng)目而異。

如果您不需要Java EE功能(例如,您將使用Spring Framework),那么我會(huì)說(shuō)使用Tomcat。這是事實(shí)上的行業(yè)標(biāo)準(zhǔn),因此,如果您選擇它,您將有最簡(jiǎn)單的時(shí)間查找文檔和示例。但是,如果您已經(jīng)知道將在受限環(huán)境中運(yùn)行應(yīng)用程序,請(qǐng)考慮選擇Jetty,因?yàn)樗加每臻g較小。

如果您計(jì)劃編寫(xiě)Java EE應(yīng)用程序,那么事情會(huì)變得更加細(xì)微。

正如我已經(jīng)說(shuō)過(guò)的,可以通過(guò)包含第三方依賴項(xiàng)來(lái)使用Tomcat來(lái)運(yùn)行Java EE應(yīng)用程序。因此,如果您知道只使用一小部分Java EE,那么Tomcat仍然是一個(gè)不錯(cuò)的選擇。例如:如果您只需要JPA實(shí)現(xiàn),那么將EclipseLink導(dǎo)入到您的項(xiàng)目中就可以了,您可以愉快地繼續(xù)使用Tomcat。但是,如果您知道您將大量使用Java EE,或者您需要的功能不能作為第三方插件使用,那么請(qǐng)使用WildFly。

結(jié)論

總的來(lái)說(shuō),我建議支持Tomcat,但如果你需要更小的足跡,可以考慮Jetty。否則,如果您需要在項(xiàng)目中使用大量Java EE支持,請(qǐng)使用WildFly。

    本站是提供個(gè)人知識(shí)管理的網(wǎng)絡(luò)存儲(chǔ)空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點(diǎn)。請(qǐng)注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購(gòu)買等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請(qǐng)點(diǎn)擊一鍵舉報(bào)。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評(píng)論

    發(fā)表

    請(qǐng)遵守用戶 評(píng)論公約

    類似文章 更多