Apache发布TomEE 7.1,支持Java 8和MicroProfile 1.2
Apache TomEE社區發布了TomEE 7.1,這是一個重大的升級,提供了Java SE 8和MicroProfile 1.2支持。
歷史
2011年,David Blevins當時受雇于IBM,領導一個志愿者團隊創建了TomEE,一個“Tomcat”和“JavaEE”組成的復合產品,并在JavaOne 2011大會上進行了發布。TomEE 包含OpenWebBeans、OpenEJB和OpenJPA等Apache組件。TomEE的核心價值觀:小巧、有保證的Tomcat。Blevins于2012年離開IBM創建了Tomitribe,該公司的使命是:
為社區和所有與TomEE相關的一切提供支持。我們希望為開發者提供工作崗位,為客戶提供支持,教人們使用TomEE、開源和JavaEE,并為社區中每個人的成功做出貢獻。我們相信,開源是一個生態系統,這個生態系統中的每一個人都可以發揮作用,從開源項目的開發者到使用它的公司。
Blevins目前是Tomitribe創始人兼首席執行官。
TomEE 7.1
Tomitribe提供了一種便捷的方式來升級到這個最新版本,關于新特性和升級的更多細節可以在發布說明中找到。
一年前發布的MicroProfile 1.2引入了JWT-Auth、Fault Tolerance、Health Check和Metrics等API。作為Tomitribe培訓開發人員承諾的一部分,Tomitribe提供了一份JWT-Auth的介紹和教程,并在TomEE 7.1發布后提供了一份Fault Tolerance的介紹和教程。
TomEE 8
TomEE 7.1支持Java 8,是作為TomEE 8正式版本的過渡版本,后者將兼容Java EE 8/Jakarta EE和MicroProfile 1.3。隨著TomEE 8 M1的發布,TomEE 8正式版本的開發加速了。
這個里程碑版本中的特性包括首次支持JSON-B(JSR-367)和Java EE Security(JSR-375)。雖然沒有在M1版本中實現,但是Java EE Security規范已經定義好,將在未來的里程碑版本中實現。TomEE 8 M1還包括以下更新:CDI 2.0(JSR-365)、JAX-RS 2.1(JSR-370)、Servlet 4.0(JSR-369)、Bean Validation 2.0(JSR-380)和JSF(JSR-372)。
其他項目
Tomitribe還提供了許多其他的項目,包括TomEE/JAX-RS入門項目,這是作為TomEE的介紹。這個簡單的JAX-RS演示應用是一個顏色建模程序。復制完庫后,只需執行以下Maven命令:
mvn clean install tomee:run服務器啟動后,可以在命令行或瀏覽器上執行以下操作:
雖然這個演示應用程序已經使用了四年,但已經針對TomEE 7.1進行了更新。
Blevins向InfoQ介紹了這個最新版本。
InfoQ:在2011年的時候,是什么啟發您創建了TomEE?
David Blevins:創建的TomEE的動機有許多,很難選擇一個。在很大程度上,是為了改變這個行業。Tomcat占據了50%的市場份額,其他所有的Java EE應用服務器占據了其余的50%。為歷來討厭Java EE的Tomcat社區創建Java EE實現有一個明確的目標,就是為了團結業界。另一個方面是為了將企業重新定義為“小型”企業——“小”一百倍。很明顯,這個行業正在脫“大”向“小”,Java EE中需要有人來推動這個方向的發展,開發一個專注于完善“小”的實現。最后,OpenEJB社區有一種難以置信的熱情,在EJB多年來備受攻擊的情況下,它成了成功改變最頑固思想的不懈動力。在創建TomEE之前的兩年里,我們在世界各地會面,這里一周,那里一周。每次我們相遇,我們的夢想都變得越來越強烈,直到TomEE最終誕生。
InfoQ:與其他中間件應用程序服務器相比,TomEE有什么獨特之處?
Blevins:我們不是“應用服務器”的傳統粉絲。我們喜歡public-static-void-main。如果它不能用一秒鐘左右的開銷在IDE中運行一個簡單的單元測試,我們就對它失去耐心了。這是底線。TomEE可以作為一個傳統的應用服務器,但我和其他人通常是在沒有IDE插件和獨立進程的情況下以嵌入的方式運行它。TomEE JAX-RS入門項目展示了一個簡單的JUnit/Arquillian測試,它使用TomEE Embedded,運行時間為3-5秒。運行mvn tomee:exec,你就可以得到應用程序的uber-jar版本。
對TomEE用戶來說,Tomcat的行業投資是一個獨特而重要的優勢。所有Java相關的工具和云平臺都提供某種形式的Tomcat支持。TomEE只是Tomcat的另一個版本,它通常是開箱即用的。
TomEE比較小,只有30-40MB,2-5秒即可啟動,內存占用不足50MB,并已在Amazon AWS t3.micro實例上獲得認證。它無疑是2011年最輕量級的Java EE 6應用服務器。根據Antonio Goncalves在2016年對Java EE 7服務器的測試,TomEE仍處于領先地位。我們要看看誰將獲得Java EE 8的這個頭銜。每個人都在迎頭趕上,這真的很棒。
InfoQ:TomEE 8預計會在什么時候發布?
Blevins:給出時間表是Apache開源項目的禁忌,所以我的回答是非正式的。我認為,Java 11的兼容性工作至少會持續幾周的時間,并在這之后發布TomEE 8的另一個里程碑版本。在那之后,我們會討論我們希望新開源但尚未發布的Jakarta EE 8 TCK開始時在哪個TomEE版本上運行。可能的情況是,我們會在1月份發布TomEE 8最終版,然后將Jakarta EE 8的目標定為TomEE 8.1。
InfoQ:您關注IBM最近宣布收購紅帽了嗎?這可能會對TomEE、Thorntail、OpenLiberty、Payara和MicroProfile產生怎樣的影響?
Blevins:就開源來說,我們對行業的潛在影響遠遠超過供應商,因此,如果我們想要這些項目好,它們就會好。難的是自我意識。
去年Equifax被黑,丟失了1.4億社會保障號碼,損失了42億美元的市值,然后就指責Struts,我在Apache Struts社區的很多朋友特別沮喪。攻擊不是物質上的。已經修復漏洞的、苦苦掙扎的開源項目也不是物質上的。故事是這樣的,我們作為一個行業,怎么樣反復導致了自己的失敗,因為我們不懂,我們擁有自己使用的開源項目,它是我們的責任。
如果你在公司里使用開源項目,有自己的預算,但并沒有把其中一部分預算用于你使用的開源項目,那么你面對的所有問題都是自己造成的。你讓高管在對你而言至關重要的東西上投資不足。這是一個冒險的選擇,公司任何經濟上的損失都會算在你頭上。
聰明點。拿出你的計算器,算一下,遷移需要花費多少時間和精力。把那些時間和精力按照一定的比例每年投入到你使用的開源項目上,絕對很好。
多好?我們再看下Struts。Equifax被黑后12個月,Indeed.com顯示,企業已經發布了1721個要求Struts經驗的就業機會,保守估計,人均8萬美元,則有約1.37億美元計劃花在Struts上。如果這個行業把中5%定向投到Struts上,則有685萬美元。因此,只需從每個招聘Struts工程師的崗位上拿出3980美元投入項目本身,就相當于從代碼中節省了85.6個全職員工。哪個更好,一個全職員工8萬美元,還是把85個全職員工4000美元?
我們不僅不善于開源,也不擅長數學。我們有大量的開源開發人員。我們需要更多的開源高管。
如果你擔心OpenLiberty或Thorntail,在出現任何整合之前,你有三年左右的時間可以開始投入。你的行動將決定會發生什么,所以如果你沒有“投票”,那么未來就不要抱怨。如果你認為這個行業需要更多的“紅帽”,即使是把少量的業務轉向Payara和Tomitribe,我保證你在兩年內就會驚訝于其行業級影響。
InfoQ: TomEE的路線圖是什么樣子,尤其是在MicroProfile 2.0支持方面?
Blevins:我認為,MicroProfile 2.0的工作有很大的幾率在TomEE 8的早期完成。MicroProfile 1.4和2.0在功能上相同,TomEE目前僅支持到1.4。現在,只有一個專門的TomEE發行版包含MicroProfile技術。它沒有包含在TomEE Plus或Plume中。我希望有個好機會把那些都添加到Plus和Plume中,或者我們可能會看到另一個TomEE發行版,包含所有Java EE和MicroProfile支持。這只會比現在的TomEE Plus大4MB。我希望看到一個在新的Amazon AWS t3.nano實例上經過Jakarta EE 8認證的TomEE。
人們應該可以預見到整體活動的顯著增多。在過去的12個月里,TomEE社區增加的提交者比前六年的總和還要多,這是新版本和社區活躍的主要原因。隨著MicroProfile的蓬勃發展和Jakarta EE的興起,最終,我們行業的各個方面將再次開始變得強大,包括TomEE在內。
現在是令人興奮的時刻。是時候投入進來了。TomEE社區的未來一片光明。
相關資源
- TomEE:升級很簡單!(Jonathan Gallimore,2018年9月6日)
- TomEE:7.1版本概述(Roberto Cortez,2018年9月10日)
- MicroProfile JSON Web Token (JWT)?(Jean-Louis Monteiro,20018年9月17日)
- TomEE:MicroProfile JWT教程(Cesar Hernandez,2018年9月20日)
- MicroProfile Fault Tolerance第二部分(Bruno Baptista,2018年9月27日)
- MicroProfile Fault Tolerance注解(Bruno Baptista,2018年10月1日)
- TomEE:MicroProfile Fault Tolerance教程(Bruno Baptista,2018年10月4日)
- TomEE:TomEE 8 M1發布(Roberto Cortez,2018年11月5日)
查看英文原文:Apache Releases TomEE 7.1 with Support for Java 8 and MicroProfile 1.2
總結
以上是生活随笔為你收集整理的Apache发布TomEE 7.1,支持Java 8和MicroProfile 1.2的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: dubbo源码解析-集群容错架构设计
- 下一篇: v-bind 属性绑定