全部課程
發(fā)布時間: 2021-08-06 09:34:58
Java仍然是開發(fā)人員群體中最流行的編程語言之一,如果在容器和Kubernetes環(huán)境下使用它,還是有缺點的。
Quarkus為700多萬Java開發(fā)人員提供了用他們熟悉的框架繼續(xù)構(gòu)建新應(yīng)用的機(jī)會。
為什么要在紅帽O(jiān)penShift上使用Quarkus?
Quarkus應(yīng)用在容器中運行,而紅帽O(jiān)penShift天然集成了Quarkus,從而讓部署更簡化。Quarkus on Red Hat OpenShift為開發(fā)人員提供熟悉的工具、使用紅帽CodeReady Workspaces等IDE的集群遠(yuǎn)程開發(fā),以及與托管配置的集成、無服務(wù)器工作負(fù)載的部署和應(yīng)用存儲的管理。
Quarkus還提供與Kubernetes API的集成,包括通用API客戶端和使用Kubernetes ConfigMaps的動態(tài)應(yīng)用配置。購買紅帽O(jiān)penShift時包含對Quarkus的紅帽訂閱和支持。
Quarkus和開發(fā)人員生產(chǎn)力
Quarkus的設(shè)計充分考慮到了開發(fā)人員。開發(fā)人員生產(chǎn)力意味著組織可以通過快速開發(fā)和部署新應(yīng)用來更快地響應(yīng)快速變化的市場。Quarkus可幫助提高開發(fā)人員的工作效率,例如用于快速內(nèi)循環(huán)開發(fā)的實時編碼、與紅帽CodeReady Workspaces等IDE的集成,以及超越傳統(tǒng)Java標(biāo)準(zhǔn)的API。
使用Quarkus,開發(fā)人員可以混合使用MicroProfile、Spring Framework API,和其他現(xiàn)有流行框架等標(biāo)準(zhǔn),同時受益于Quarkus在Kubernetes上的效率。
如何將我的Spring Boot應(yīng)用帶到Quarkus?
將當(dāng)前的Spring Boot應(yīng)用帶到Quarkus和紅帽O(jiān)penShift不僅是可能的,而且比你想象得更容易。應(yīng)用程序遷移工具包(MTA)可以通過分析源代碼,甚至二進(jìn)制文件來審查您的Java應(yīng)用組合,其中涵蓋了廣泛的轉(zhuǎn)換路徑(Java EE、JDK、Linux、容器化、Quarkus 等),并加速遷移過程。
MTA 5.1版提供了對Spring Boot到Quarkus的廣泛支持。
Quarkus是什么?
Quarkus是一個框架,用于構(gòu)建在傳統(tǒng)Java虛擬機(jī)(JVM)上運行,或作為原生編譯的可執(zhí)行文件運行的 Kubernetes原生Java應(yīng)用。Quarkus較大限度地減少了啟動時間和內(nèi)存使用,并與現(xiàn)有Java框架和開發(fā)人員工具集成,以快速開發(fā)和部署應(yīng)用。Quarkus可以幫助您運行處理無服務(wù)器、微服務(wù)、容器、Kubernetes或混合云中其他應(yīng)用程序類型的Java應(yīng)用。
Quarkus理念
Quarkus旨在為傳統(tǒng)的Java虛擬機(jī)運行時(如OpenJDK)生成緊湊而高效的應(yīng)用,并且可以生成原生可執(zhí)行二進(jìn)制文件以實現(xiàn)更大的優(yōu)化。不過,關(guān)鍵是在構(gòu)建階段做盡可能多的前期工作,這在應(yīng)用的生命周期中只發(fā)生一次。
在構(gòu)建階段,Quarkus首先將應(yīng)用編譯成傳統(tǒng)的Java字節(jié)碼、加載和解析配置、處理注釋、構(gòu)建框架元模型,并將它們?nèi)窟B接到一個傳統(tǒng)的可執(zhí)行Java應(yīng)用程序(JAR文件)中。在運行時——應(yīng)用啟動時——執(zhí)行這些步驟不需要任何內(nèi)存、CPU或時間,這大大減少了啟動時間。
原生編譯
Quarkus應(yīng)用可以編譯為原生可執(zhí)行文件,以提高效率。使用Mandrel(GraalVM的下游發(fā)行版),分析應(yīng)用程序以查找“死代碼”(在運行時永遠(yuǎn)不會訪問的代碼路徑),并從應(yīng)用可執(zhí)行文件中消除它。這讓小型輕量級可運行應(yīng)用在數(shù)十毫秒內(nèi)啟動,并在運行時僅需要數(shù)十兆字節(jié)的內(nèi)存。
上一篇: liunx怎么復(fù)制東西