紅帽發布Kubernetes原生Java開發框架Quarkus最新版本1.0候選版,Quarkus是個開源堆疊,可讓開發者使用熟悉的程式開發模型,撰寫可快速啟動且記憶體占用少的Java應用程式,最新版本對指令式程式開發有更好的支援,並且也與Java的Spring開發框架相容。

Java一直以來是都是熱門的開發語言,在1990年代中期誕生,直至今日已經超過20年,紅帽提到,現在是一個雲端、行動、物聯網和開源主導的世界,大量應用容器、Kubernetes、微服務、功能即服務(FaaS)等新興技術,因此他們重新思考,Java在新的部署環境和應用程式架構中整合的方式。

為此Java推出了Quarkus,這是一個專為GraalVM和HotSpot量身定做的Kubernetes原生Java開發框架,提供開發人員一個結合反應式和指令式的統一程式開發模型,並作為Kubernetes以及無伺服器環境平臺,為分散式應用程式架構提供一個良好的解決方案。

Quarkus的設計講究容器優先,由於高效的執行效率,Quarkus可以在數十毫秒內快速啟動,並自動擴展或縮放Kubernetes上的微服務,或是執行中的FaaS。Quarkus應用程式以及容器映像檔占用的空間小,且記憶體需求低的特性,可以在多容器的微服務基礎架構中,讓使用者容易最佳化容器密度。

紅帽也提到,因為大多數Java開發人員都熟悉指令式程式開發模型,並希望在新平臺中也可延續相似的開發經驗,但同時,開發人員也必須適應雲端原生、事件驅動、非同步以及反應式模型等各種開發形式,以快速建置高並行與回應性應用程式。而Quarkus可將指令式以及回應式程式開發模型整合在同一個平臺中。

Quarkus是一個全端框架,內含了Eclipse MicroProfile、JPA/Hibernate、 JAX-RS/RESTEasy、Eclipse Vert.x和Netty等函式庫,Quarkus同時還內建了一個擴充框架,讓第三方框架的作者,可以用來進行功能擴展,紅帽表示,這個擴充套件框架簡化第三方框架在Quarkus上執行,並編譯成為GraalVM原生二元檔案的複雜性。

紅帽在今年3月的時候發布了Quarkus,而歷經了36周30個版本,現在來到1.0版本,這個版本強化了回應式核心對於指令式程式開發的支援,Quarkus的核心網路模型使用Eclipse Vert.x單一網路引擎,可同時支援反應式和指令式的程式開發模型,而Quarkus會自動處理模型切換的工作。Quarkus加入了一個新的安全層,是以Vert.x的反應式方法實作,另外,Quarkus也宣布相容Spring API,包括Spring Web、Spring Data JPA以及Spring DI。


Advertisement

更多 iThome相關內容