溫馨提示×

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

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

java有哪些熱門的微服務(wù)框架

發(fā)布時(shí)間:2020-06-09 14:15:39 來源:億速云 閱讀:281 作者:鴿子 欄目:編程語言

常用的java微服務(wù)框架有很多,這里為大家簡單介紹熱門的幾種,如下所示:

1、Spring Boot

Java構(gòu)建Spring應(yīng)用程序已經(jīng)有很長一段時(shí)間了,Spring Boot是Spring的一個(gè)特定版本,它通過對(duì)配置細(xì)節(jié)的處理,使微服務(wù)構(gòu)建更加簡便。創(chuàng)建Spring Boot旨在自啟動(dòng)任何類型的Spring項(xiàng)目,而不僅僅是微服務(wù)。應(yīng)用程序完成后,Spring Boot將在web服務(wù)器中混合,并輸出一個(gè)JAR文件,JVM除外。你可以將其視為原始Docker容器。這也是許多負(fù)責(zé)構(gòu)建微服務(wù)的開發(fā)者都非常喜歡Spring Boot的原因。

2、Eclipse MicroProfile

2016年,Java Enterprise社區(qū)決定清理Java Enterprise Edition中的內(nèi)容,以便人們可以使用經(jīng)典部件構(gòu)建簡單的微服務(wù)。他們?nèi)コ舜罅康膸?,但保留了處理REST請(qǐng)求,解析JSON和管理依賴注入的功能代碼,最終被稱為Eclipse MicroProfile,其特性為快速而簡單。

從那以后,MicroProfile社區(qū)制定了一個(gè)協(xié)議,每季度發(fā)布一個(gè)新版本,同時(shí)添加新代碼以保持微服務(wù)平穩(wěn)安全地運(yùn)行。任何Java EE開發(fā)者都會(huì)非常熟悉開發(fā)過程和代碼結(jié)構(gòu),而且還吧配置麻煩給省去了。

(視頻教程推薦:java視頻)

3、Dropwizard

當(dāng)Dropwizard在2011年出現(xiàn)時(shí),Dropwizard框架為開發(fā)者提供了一個(gè)非常簡單的模型,里面包含了許多重要的模塊,你可以根據(jù)需求添加一些業(yè)務(wù)邏輯,或者配置其他內(nèi)容,最后你會(huì)發(fā)現(xiàn)JAR文件非常小,并且能夠快速啟動(dòng)。

4、WildFly Thorntail

Red Hat的工作人員使用一個(gè)靈活的配置工具構(gòu)建了他們自己的MicroProfile版本。該框架最初被稱為WildFly Swarm,但后來被重新命名為WildFly Thorntail,Thorntail通過指定所需的特性來幫助您創(chuàng)建自己的Maven構(gòu)建文件,然后Maven負(fù)責(zé)組裝所有東西。

5、Helidon

Helidon去除了Java Enterprise Edition,保留輕量級(jí)的、基于servlet的核心,并吸引了大量的粉絲。在Helidon的,開發(fā)人員從Netty,并添加代碼進(jìn)行路由和錯(cuò)誤處理。它采用了代碼的兩個(gè)基本模型,即所謂的SE和MP版本。

Node 開發(fā)者可能更熟悉Helidon SE,因?yàn)槠渚哂杏删潼c(diǎn)連接的函數(shù)調(diào)用。使用JAX-RS的Java程序員則更熟悉Helidon MP。此外,Helidon還集成了一些備受好評(píng)的工具,這些都是它能夠吸引大量開發(fā)者的原因。

6、Cricket

另外一個(gè)用于快速API開發(fā)框架的是Cricket。Cricket很小,盡管它包括許多額外的功能,如鍵值數(shù)據(jù)存儲(chǔ),以避免連接數(shù)據(jù)庫和調(diào)度程序來控制后臺(tái)重復(fù)處理。沒有添加復(fù)雜性或其他依賴項(xiàng),因此很容易將代碼添加到Cricket并啟動(dòng)獨(dú)立的微服務(wù)。

7、Jersey

開發(fā)web服務(wù)的標(biāo)準(zhǔn)方法之一是RESTful web服務(wù)的Java API(又名JAX-RS),這是Jersey框架中實(shí)現(xiàn)的通用規(guī)范。這種方法主要依賴于使用注釋來指定路徑映射和返回細(xì)節(jié)。從參數(shù)解析到JSON打包的所有其他內(nèi)容都由Jersey處理。

Jersey的主要優(yōu)點(diǎn)是它實(shí)現(xiàn)了JAX-RS標(biāo)準(zhǔn),這個(gè)特性非常受歡迎,一些開發(fā)人員習(xí)慣將Jersey與Spring Boot結(jié)合在一起使用。

8、Play

體驗(yàn)JVM跨語言能力的最佳方式之一是使用Play框架,這是可以與Java或任何其他JVM語言兼容的。它的基礎(chǔ)非?,F(xiàn)代,具有異步、無狀態(tài)的模型,不會(huì)讓試圖跟蹤用戶及其會(huì)話數(shù)據(jù)的線程使服務(wù)器過載。還有許多額外的特性可以用來充實(shí)網(wǎng)站,比如OpenID、驗(yàn)證和文件上傳支持。

9、Swagger

構(gòu)建一個(gè)API看起來就像編寫一個(gè)監(jiān)聽端口的代碼一樣簡單,但是Swagger的開發(fā)人員不這么認(rèn)為。他們已經(jīng)創(chuàng)建了一個(gè)完整的API規(guī)范語言O(shè)penAPI,你可以使用它來說明你的API。這似乎是一個(gè)額外的步驟,但是Swagger團(tuán)隊(duì)還提供了將該規(guī)范轉(zhuǎn)換為自動(dòng)化測試、文檔等的代碼。

Swagger配置文件中的API很簡單,用于實(shí)現(xiàn)接口、記錄接口的,并提供一組工具來測試構(gòu)建在其下的代碼,甚至還有一種API治理機(jī)制。

10、Restlet

不同框架之間最大的區(qū)別之一是和其他服務(wù)或庫的連接數(shù)量。Restlet項(xiàng)目提供了更大的特性和連接集合,它已經(jīng)與JavaMail之類的庫集成,避免微服務(wù)需要對(duì)某些郵件服務(wù)器使用POP、IMAP或SMTP;為防構(gòu)建大量文本索引和元數(shù)據(jù),還集成了 Lucene 和 Solr。

Restlet中還有很多特性在持續(xù)開發(fā)。例如,你不需要使用JSON,因?yàn)樗梢灾苯犹幚鞽ML、CSV、YAML和其他一些文件格式,此外,它還允許用戶從Chrome瀏覽器測試api。

以上就是常用的java微服務(wù)框架有哪些的詳細(xì)內(nèi)容,更多請(qǐng)關(guān)注億速云其它相關(guān)文章!

向AI問一下細(xì)節(jié)

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

AI