精品国产一级在线观看,国产成人综合久久精品亚洲,免费一级欧美大片在线观看

MicroProfile 1.2新增功能介紹

責任編輯:editor004

作者:Michael Redlich

2017-12-04 11:19:59

摘自:INFOQ

IBM CDI和MicroProfile開發主管Emily Jiang,以及Payara公司Java中間件顧問Michael Croft向InfoQ介紹了本次發布的新版本。MicroProfile Open API主要是為了提供一個統一的Java API

為Enterprise Java微服務的實現提供了更多功能 跨越不同MicroProfile實現的互操作性使得用戶能夠在一個應用程序中自由選擇使用一個或多個MicroProfile實現 為每個API提供了一套完備的周邊資源,包括測試兼容性工具包(TCK)、Javadoc、PDF版文檔、API Maven artifact coordinate、Git標簽以及可下載內容(規范和源代碼)

按照MicroProfile路線圖的未來規劃,后續的MicroProfile 1.3版計劃在2017年12月15日發布,會新增下列API:

Open Tracing 1.0一種跨越不同微服務的分布式追蹤系統(類似Zipkin),可用于解決延遲問題。TypeSafe REST Client 1.0一種可供消耗REST服務的類型安全方式。

MicroProfile 2.0計劃在2018年3月31日發布,將包含對下列Java EE 8 API的升級:

JSON-B 1.0 JSON-P 1.1 CDI 2.0 JAX-RS 2.1

MicroProfile自從2016年9月發布時,就承諾將在Java中采用微服務。有關此次發布最新版的詳細信息可參閱MicroProfile 1.2規范。

IBM CDI和MicroProfile開發主管Emily Jiang,以及Payara公司Java中間件顧問Michael Croft向InfoQ介紹了本次發布的新版本。

InfoQ:你們對于新增的EE4J項目有何看法?

Emily Jiang:新增的EE4J項目是開源領域一個了不起的創新。所有社區,包括由于許可條款限制而無法使用Java EE TCK的社區,都能從中獲益。該項目已經盡可能保持敏捷、靈活、開放、兼容,Java開發者當然是最大的受益者。希望該項目的新版發布節奏可以進一步加快,借此徹底終結Java EE四年甚至五年為單位的發布周期。TCK的開放可以讓所有應用程序服務器獲益,尤其是原本因為許可費用緣故,未能進行TCK認證的程序。

希望能有越來越多的Java容器和框架社區以開放和公開為背景展開合作,與Java開發者進行更坦率的交流。每個開發者都能對項目做貢獻,提出或討論問題。我很看好新的EE4J項目,并且希望繼續為項目的發展貢獻自己的力量。

Michael Croft:我本人對此很激動,我覺得過去多年來,業界發生的很多事情已經證明了開源軟件的力量,尤其是類似Oracle和IBM這樣的重量級選手也開始投身社區工作。對于JSF,一些專家組成員已經提出要以社區的力量推動相關規范繼續發展。對于EE4J,入門的門檻已經大幅降低,我們已經通過郵件列表和GitHub獲得了大量的反饋。

InfoQ:在EE4J的貢獻中,你們覺得MicroProfile扮演了什么角色?

Jiang:MicroProfile已經誕生多年。在一年時間里,已經成功發布了MicroProfile 1.0(CDI 1.2、JAX-RS 2.0、JSON-P 1.0)、MicroProfile 1.1(Config 1.0)和MicroProfile 1.2(Config 1.1、Fault Tolerance 1.0、Health 1.0、Metrics 1.0和JWT 1.0)。已經發布的規范為Java EE提供了眾望所歸的微服務開發功能。例如Config JSR是JCP在十多年前提出的,但提出之后除了兩次失敗的嘗試,從來沒被接受過。

與之相對的,MicroProfile Config只用了幾個月就公開發布了,并且獲得了大量反饋。MicroProfile社區很有創新精神,完全是由開發者推動的,一切都維持開放和透明。這里取得的所有成果都為敏捷、開放、靈活和兼容設立了絕佳的典范。在類似目標以及Eclipse的推動下,未來的EE4J也將能輕松接納MicroProfile技術。

Croft:圍繞MicroProfile的諸多努力都是為了以更快的節奏實現創新。從最開始,MicroProfile的目標就在于獨立發展,同時依然維持與Java EE的密切關系,畢竟MicroProfile是基于Java EE API發展起來的。

MicroProfile的角色早已通過MicroProfile開發出的第一個API彰顯出來了:配置(Config),在最初公布了要遷移至Eclipse之后,該API就以JSR的形式順利提交。很明顯,這兩個項目可以通過很多方式相互關聯,不過目前依然保持了這樣的形式。

我覺得,MicroProfile已經具備繼續發展所需的一切。它已經在很大程度上實現了與Java EE/EE4J的兼容,而MicroProfile發展出的任何規范都會直接提交至EE4J。

InfoQ:隨著MicroProfile 1.3的發布,Open Tracing API 1.0和Open API 1.0能為大家帶來些什么?

Jiang:MicroProfile Open Tracing定義了一種追蹤微服務請求跨越服務邊界流動的模型。請求在多個服務之間流動,這是微服務架構中一種常見的情況。這個規范定義了一種基于opentracing.io的API,并定義了相關的行為,可以讓服務輕松參與到啟用了分布式追蹤的環境中。該規范還定義了一種更簡單的方法,可以讓微服務通過注釋使用分布式追蹤能力。此外該規范還提供了一個很棒的功能,可以讓JAX-RS應用程序無需更改代碼,即可自動參與到分布式追蹤工作中。

MicroProfile Open API主要是為了提供一個統一的Java API,該API由OpenAPI v3規范定義,所有 應用程序開發者都可以使用它暴露自己的API文檔。由于OpenAPI v3規范本身是語言中立的,因此基于Java的Open API也可直接被應用程序服務器所采用。這個規范基于SmartBear的Swagger庫,而SmartBear也是MicroProfile成員。MicroProfile Open API規范還將進一步完善API,以更好地滿足微服務開發需求。

除了MicroProfile Open Tracing API和Open API,MicroProfile最近還創建了另一個規范:MicroProfile REST Client,計劃將與MicroProfile 1.3一同發布。該規范提供了一種類型安全的方法,可通過HTTP調用RESTful服務。這個規范主要側重于REST客戶端,目的在于簡化客戶端的創建,而客戶端與服務器之間的通信可由服務器應用程序處理。

Croft:在最近一次的“兩周電話討論”中,還真的討論過這一點。MicroProfile 1.3目前計劃在12月發布,并通過狀態報告幫助每個項目了解截止期限信息。目前與OpenAPI的情況類似,OpenTracing和Typesafe REST Client API很可能會包含在即將發布的新版中。OpenAPI規范相當龐大,因此主要的挑戰還在于TCK。該規范本身可以兼容由Swagger發起的第3版OpenAPI規范,很多開發者其實已經熟悉它了。

Typesafe REST Client主要是為了向開發者提供一種類型安全的方法,通過定義到程序的接口來使用遠程REST服務。具體目的與OpenAPI規范有些重合,但圍繞這一領域的所有重要討論都已被延后到1.0版發布之后。此外還有一個領域可能有待討論:需要通過某種方式從OpenAPI定義生成REST客戶端接口,這樣才能更自然地融入現有工具中。

最后,OpenTracing讓MicroProfile獲得了OpenTracing標準,并可兼容諸如Zipkin或Jaeger等追蹤方面的實現。

InfoQ:Java SE新的發布周期是否會影響MicroProfile和/或EE4J的開發?

Jiang:Java SE提速后的新發布周期會對MicroProfile和EE4J的開發產生非常積極的影響,這意味著我們新制定或更新的規范也可以快速用上新增的最新版Java SE功能。目前MicroProfile的編程模型要求至少具備Java 8,一些很棒的功能,例如FunctionalInterface、默認的接口實現等已經廣泛應用在MicroProfile規范中。

Croft:我們的客戶圍繞Java SE有很多問題,但這些問題主要與Payara Server或Payara Micro有關。我覺得,Java SE可以通過相同的方式做出改變,并且對EE4J和MicroProfile的實現產生遠大于規范本身的影響。

然而MicroProfile最初的目標在于創新,著眼于未來,因此我希望在2018年能圍繞Java SE的變化展開一些討論,畢竟Java 8將于明年9月壽終正寢,而Java 11(目前的叫法)將成為新的LTS版本。

InfoQ:你們覺得Java 9什么時候可以兼容MicroProfile?

Jiang:我們還沒有在MicroProfile的GoogleGroup上討論過這個問題。對于Java 9,一個重要問題在于,由于發布周期加快為六個月,可能無法獲得像Java 8那么長的支持時間。因此以后的情況還無法確定。這也會對MicroProfile產生一定的影響。MicroProfile什么時候能夠采納Java 9,這取決于諸如Open Liberty、Wildfly Swarm、TomEE以及Payara等應用程序服務器什么時候能支持Java 9。

Croft:與Java 9+的兼容主要是實現方面的問題,畢竟已經有很多現有的模塊系統,例如Payara Server中的OSGi以及其他一些系統。我懷疑對于Java 9可能不會有官方的支持了,因為Java 9并不是LTS版本,因此對后續Java版本的官方支持可能會從9月開始選擇Java 11。

InfoQ:您目前在IBM主要負責什么?也就是說,您的日常工作具體在做些什么?

Jiang:作為IBM的MicroProfile開發主管兼CDI架構師,我會積極參與有關MicroProfile的討論并從事與各種規范有關的工作。同時我還負責管理該規范在Open Liberty中的具體實現方式。我還管理著MicroProfile Config和Fault Tolerance規范的開發,并參與了其他規范,例如Metrics、Health、REST Client、Open Tracing等的相關工作。作為MicroProfile社區有影響力的成員,我還盡可能完善整個社區的工作方式,以確保MicroProfile保持敏捷和精益。我十分看好MicroProfile編程模型,并在很多會議(Devoxx US、Devoxx UK、JAX London、Voxxed Belgrade、EclipseCon Europe)上推廣MicroProfile,并就如何在后續版本中進行改進收集反饋。此外我還是Configuration JSR共同規范的負責人,主要負責MicroProfile Config現有成果的標準化工作,并確保Config JSR和MicroProfile Config的同步,借此Config JSR的新功能也可以盡快實現到MicroProfile Config中。

InfoQ:那么Croft您目前在Payara主要承擔什么職責,日常工作都在做些什么?

Croft:我的職責非常廣泛!目前我擔任Payara支持團隊的主管,因此首要職責主要圍繞我們的客戶,其次是整個社區。我有幸能與我自己團隊,以及我們公司開發團隊中一些非常天才的人以及專職人員共事。我們會共同為產品提供商業支持,寫文檔和博客文章,在會議上發言,為MicroProfile社區做貢獻,提供社區支持,方方面面都包括在內!雖然工作很繁忙,但能獲得大量用戶的反饋也讓我們覺得獲益匪淺。

參考資料

Java EE的未來,問答David Blevins:Eclipse Foundation、EE4J和MicroProfile,InfoQ發布(2017年10月20日) 借助Eclipse MicroProfile加快對Java微服務的采用,InfoQ發布(2017年11月8日) Eclipse MicroProfile:對輕量級現代化Enterprise Java平臺的探索,作者:就職于Devoxx Belgium的Mike Croft(2017年11月9日) 構建彈性微服務?你需要的是Eclipse MicroProfile Fault Tolerance!,作者:Emily Jiang(2017年11月16日)

閱讀英文原文:What's New in MicroProfile 1.2

鏈接已復制,快去分享吧

企業網版權所有?2010-2024 京ICP備09108050號-6京公網安備 11010502049343號

  • <menuitem id="jw4sk"></menuitem>

    1. <form id="jw4sk"><tbody id="jw4sk"><dfn id="jw4sk"></dfn></tbody></form>
      主站蜘蛛池模板: 酒泉市| 韶关市| 基隆市| 贺兰县| 乐山市| 怀来县| 四子王旗| 雷波县| 田林县| 闽侯县| 苏尼特右旗| 龙州县| 同德县| 灵武市| 朝阳区| 上蔡县| 晋江市| 麦盖提县| 平阳县| 丰顺县| 民和| 石家庄市| 濮阳市| 邵阳县| 当雄县| 贵州省| 蒙自县| 仁寿县| 乐陵市| 加查县| 得荣县| 綦江县| 烟台市| 克什克腾旗| 资源县| 秦皇岛市| 南城县| 吉隆县| 丰原市| 白城市| 建平县|