Micronaut在2.0版本上邁出了一小步,但在無伺服器的Java上邁出了一大步 •DEVCLASS

banq 發表於 2020-06-30

Micronaut(用於以Java,Kotlin或Groovy構建JVM應用程式的框架)背後的團隊已經完成了該專案的2.0版,為使用者提供了對無伺服器、新的CLI和基於瀏覽器的啟動工具的更好支援。

Micronaut是Grails Web應用程式框架的建立者獲得APL 2.0許可的開源專案,於2018年向公眾開放。Micronaut建立者的主要目標之一是幫助構建易於測試的應用程式、進行面向方面AOP的程式設計、預設和自動配置、依賴項注入以及對專案的控制反轉。 

微服務開發是另一個重點,這就是為什麼Micronaut支援客戶端負載平衡,HTTP路由,服務發現和分散式配置的原因。但是,諸如存在Spring Boot之類的工具競爭激烈,這就是為什麼Micronaut用較短的啟動時間、最少的代理和反射使用、很少的記憶體使用以及沒有執行時位元組碼生成來吸引開發人員的原因。這是通過在編譯時預先計算框架基礎結構來實現的,這意味著在執行時要做的事很少。(這種特點適合serverless無伺服器環境) 

對於第二個主要版本,Micronaut團隊在其命令列介面中投入了很多思考,在最近幾個月中該介面已被完全重寫。新的迭代是在picocli專案的基礎上構建的,這要歸功於GraalVM本機映像,從而可以使用Linux,MacOS和Windows的本機映像。

為了更好地利用已經提到的GraalVM,Micronaut團隊穩定了對GraalVM本機映像的支援,該映像現在包括自動檢測靜態資源並簡化資料庫整合。 

總體改進包括對JDK 8和Groovy 3的支援以及縮短的啟動時間。開發人員還應擁有更輕鬆的時間來定義Bean內省並操縱Bean的建立方式。

除此之外,Micronaut學會了使用新的部署目標,以便使用者可以讓其功能在主要雲提供商(Google Cloud Function,Azure Functions和AWS)的整個範圍內執行,並支援Servlet的建立。