jakarta ee_MicroProfile在Jakarta EE时代的作用
jakarta ee
自創(chuàng)建以來(lái),MicroProfile贏得了廣泛的關(guān)注,并制定了各種規(guī)格。 最初,它的創(chuàng)建是為了在多個(gè)供應(yīng)商的推動(dòng)下,以更快的速度推進(jìn)微服務(wù)世界的企業(yè)Java。 現(xiàn)在,隨著在Eclipse Foundation下將Java EE轉(zhuǎn)換為Jakarta EE,MicroProfile如何合理地適合Enterprise Java領(lǐng)域中的情況?
據(jù)我所知,MicroProfile背后的想法是在推進(jìn)Java Enterprise方面創(chuàng)造更快,更有效的進(jìn)步。 到目前為止,有各種各樣的規(guī)范,例如Config,Fault Tolerance或Metrics,旨在縮小Java EE API的差距以適應(yīng)現(xiàn)代企業(yè)Java的需求。 同樣,MicroProfile旨在使為微服務(wù)部署設(shè)計(jì)小型運(yùn)行時(shí)成為可能,在這種情況下,項(xiàng)目?jī)H提供他們正在使用的規(guī)范。
長(zhǎng)處
今天,我看到了MicroProfile在改進(jìn)企業(yè)Java方面的最大優(yōu)勢(shì),即添加了Java EE 8當(dāng)前缺少的內(nèi)容。特別是諸如彈性,可觀察性或簡(jiǎn)單的,獨(dú)立于供應(yīng)商的配置之類的問(wèn)題尚未被Java Enterprise標(biāo)準(zhǔn)涵蓋。 盡管在生產(chǎn)中運(yùn)行企業(yè)應(yīng)用程序時(shí)始終必須考慮這些問(wèn)題,但對(duì)于基于微服務(wù)的系統(tǒng)而言,它們變得更加重要,因?yàn)榛谖⒎?wù)的系統(tǒng)分布更廣。 諸如Config,Fault Tolerance或Metrics之類的MicroProfile項(xiàng)目彌合了這些差距。
MicroProfile已經(jīng)有效地充當(dāng)了潛在的新規(guī)范的孵化器。 MicroProfile項(xiàng)目能夠定義Java Enterprise擴(kuò)展,但是可以在規(guī)范級(jí)別上定義它,而不僅僅是單個(gè)實(shí)現(xiàn)或特定于供應(yīng)商的解決方案。 這些項(xiàng)目可以作為新的Java Enterprise標(biāo)準(zhǔn)的基礎(chǔ)。 實(shí)際上, Config JSR將基于MicroProfile Config及其實(shí)際經(jīng)驗(yàn)。
除這些要點(diǎn)外,MicroProfile還允許開(kāi)發(fā)人員通過(guò)僅包括他們所需的規(guī)范來(lái)分別配置其運(yùn)行時(shí)。 按照這種方法,MicroProfile在其第一個(gè)版本中僅包括CDI,JAX-RS和JSON-P。
但是,對(duì)我而言,這僅是運(yùn)行時(shí)優(yōu)化。 我已經(jīng)說(shuō)過(guò)幾次了,我認(rèn)為這些標(biāo)準(zhǔn)以及擁有瘦身部署工件的可能性更為重要。 我通常使用Java EE應(yīng)用程序服務(wù)器,該服務(wù)器支持MicroProfile,允許精簡(jiǎn)部署工件,并且仍附帶其他企業(yè)標(biāo)準(zhǔn),例如JPA。 如果(且僅當(dāng))最小運(yùn)行時(shí)大小成為問(wèn)題時(shí),我將使用空心WAR / JAR方法。
少了什么東西
在將MicroProfile項(xiàng)目與Java Enterprise標(biāo)準(zhǔn)進(jìn)行比較時(shí),開(kāi)發(fā)人員會(huì)注意到,前者缺少某些規(guī)范的互操作性。 無(wú)需任何配置即可使用多種技術(shù)的能力是我聲稱Java Enterprise API包含非常有效的開(kāi)發(fā)人員體驗(yàn)的原因之一。 根據(jù)哪些項(xiàng)目將被視為MicroProfile的一部分,未來(lái)的規(guī)范可能會(huì)更多地集中在這一點(diǎn)上。
MicroProfile和Jakarta EE形成的當(dāng)前狀況面臨著從組織角度和技術(shù)角度重新發(fā)明輪子的危險(xiǎn)。 Jakarta EE傾向于類似地重復(fù)MicroProfile經(jīng)歷并仍在進(jìn)行的開(kāi)源過(guò)程和開(kāi)發(fā)。 尤其是,當(dāng)兩種技術(shù)的方向和責(zé)任沒(méi)有完全弄清楚時(shí),供應(yīng)商和貢獻(xiàn)者就有兩次花費(fèi)類似努力的風(fēng)險(xiǎn)。 技術(shù)責(zé)任也是如此。 盡管大多數(shù)MicroProfile項(xiàng)目在Java Enterprise世界的其余部分都可以很好地工作,例如,Rest Client與JAX-RS廣泛重疊,并且可以以二進(jìn)制兼容的方式基于后者。
MicroProfile運(yùn)行時(shí)的部署模型主要基于獨(dú)立的可執(zhí)行文件。 除此以外,一些供應(yīng)商還支持定義運(yùn)行時(shí)包含的規(guī)范以及將精簡(jiǎn)部署工件作為空心WAR / JAR工件進(jìn)行運(yùn)輸?shù)慕M合。 后者提供了很好的折衷,在某種程度上是兩全其美。 但是,如前所述,我不認(rèn)為最小的總運(yùn)行時(shí)大小對(duì)于大多數(shù)企業(yè)項(xiàng)目至關(guān)重要。
提議的想法:Jakarta EE的孵化器
我對(duì)MicroProfile的未來(lái)及其在Jakarta EE時(shí)代在企業(yè)Java世界中的地位的建議是,作為將來(lái)Jakarta EE規(guī)范的孵化器。
MicroProfile將通過(guò)基于規(guī)范的擴(kuò)展來(lái)推進(jìn)企業(yè)Java,而不僅僅是基于單個(gè)實(shí)現(xiàn)或特定于供應(yīng)商的功能。 與今天類似,MicroProfile項(xiàng)目將添加Java Enterprise中缺少的內(nèi)容。
與當(dāng)前的項(xiàng)目不同,孵化MicroProfile可以基于Jakarta EE的所有標(biāo)準(zhǔn)。 他們將共享相同的技術(shù)設(shè)計(jì)原則(請(qǐng)參閱我關(guān)于Jakarta EE設(shè)計(jì)原則的建議 )。 同樣,MicroProfile可以確保Jakarta EE與MicroProfile規(guī)范之間的互操作性,類似于當(dāng)今的Java EE標(biāo)準(zhǔn)。
這將大大提高開(kāi)發(fā)人員的體驗(yàn)。 開(kāi)發(fā)人員可以將MicroProfile項(xiàng)目添加到Jakarta EE應(yīng)用程序中,以填補(bǔ)該Jakarta EE版本中的空白。 這些項(xiàng)目將遵循相同的原則,具有相似的外觀,并與現(xiàn)有標(biāo)準(zhǔn)良好地協(xié)作。
與企業(yè)標(biāo)準(zhǔn)相比,MicroProfile允許更快的進(jìn)度。 盡管Jakarta EE標(biāo)準(zhǔn)將花費(fèi)大量的時(shí)間和精力,但是可以以輕量級(jí)的方式來(lái)組建和執(zhí)行MicroProfile孵化項(xiàng)目,從而減少組織開(kāi)銷。 盡管如此,孵化MicroProfile仍將遵循Jakarta EE背后的思想和原則。
對(duì)于沒(méi)有立即或最終添加到標(biāo)準(zhǔn)集中的擴(kuò)展,孵化器流程始終是一個(gè)更安全的場(chǎng)所。 但是,需要孵化功能的項(xiàng)目可以在不更改其其余Jakarta EE應(yīng)用程序的情況下將它們合并。
最終,一個(gè)正在孵化的MicroProfile項(xiàng)目一旦過(guò)渡到成為Jakarta EE標(biāo)準(zhǔn),將剩下較少的工作。 雖然企業(yè)標(biāo)準(zhǔn)需要考慮更多方面,但是與創(chuàng)建兩個(gè)單獨(dú)的規(guī)范相比,所需的總體工作量和工作量將少得多。
下一步
通常,至關(guān)重要的是,Java Enterprise社區(qū)必須共享一個(gè)清晰的通用圖像,以表示MicroProfile在未來(lái)的地位。
遵循MicroProfile作為Jakarta EE孵化器的想法的下一步是定義并達(dá)成協(xié)議:
- Jakarta EE和MicroProfile的共享技術(shù)設(shè)計(jì)原則
- 孵化MicroProfile的命名,品牌和名稱空間
- 未來(lái)MicroProfile項(xiàng)目和孵化到Jakarta EE的通用流程
我對(duì)您的反饋意見(jiàn)很感興趣。 您對(duì)MicroProfile和Jakarta EE如何以及如何共存有何想法?
翻譯自: https://www.javacodegeeks.com/2018/08/microprofiles-role-jakarta-ee.html
jakarta ee
總結(jié)
以上是生活随笔為你收集整理的jakarta ee_MicroProfile在Jakarta EE时代的作用的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: ddos攻击端口(ddos创建端口)
- 下一篇: jax-rs配置_具有MicroProf