Micronaut 介紹

2023-02-23 14:23 更新

Micronaut 是一個現(xiàn)代的、基于 JVM 的全堆棧 Java 框架,旨在構(gòu)建模塊化、易于測試的 JVM 應(yīng)用程序,支持 Java、Kotlin 和 Groovy。

Micronaut 由 Grails 框架的創(chuàng)建者開發(fā),從多年來使用 Spring、Spring Boot 和 Grails 構(gòu)建從單體到微服務(wù)的實際應(yīng)用程序的經(jīng)驗教訓(xùn)中汲取靈感。

Micronaut 旨在提供構(gòu)建 JVM 應(yīng)用程序所需的所有工具,包括:

  • 依賴注入和控制反轉(zhuǎn) (IoC)

  • 面向切面編程 (AOP)

  • 合理的默認值和自動配置

使用 Micronaut,您可以構(gòu)建消息驅(qū)動的應(yīng)用程序、命令行應(yīng)用程序、HTTP 服務(wù)器等,同時對于微服務(wù),尤其是 Micronaut 還提供:

  • 分布式配置

  • 服務(wù)發(fā)現(xiàn)

  • HTTP路由

  • 客戶端負載均衡

同時,Micronaut 旨在通過提供以下功能來避免 Spring、Spring Boot 和 Grails 等框架的缺點:

  • 快速啟動時間

  • 減少內(nèi)存占用

  • 最少使用反射

  • 最少使用代理

  • 沒有運行時字節(jié)碼生成

  • 簡單的單元測試

從歷史上看,Spring 和 Grails 等框架并非設(shè)計用于在無服務(wù)器功能、Android 應(yīng)用程序或低內(nèi)存占用微服務(wù)等場景中運行。相比之下,Micronaut 旨在適用于所有這些場景。

這個目標是通過使用 Java 的 annotation processors(注解處理器)來實現(xiàn)的,它可以在任何支持它們的 JVM 語言上使用,以及在 Netty 上構(gòu)建的 HTTP 服務(wù)器和客戶端。為了提供與 Spring 和 Grails 類似的編程模型,這些注釋處理器預(yù)編譯必要的元數(shù)據(jù)以執(zhí)行 DI、定義 AOP 代理并將您的應(yīng)用程序配置為在低內(nèi)存環(huán)境中運行。

Micronaut 中的許多 API 都深受 Spring 和 Grails 的啟發(fā)。這是設(shè)計使然,可幫助開發(fā)人員快速上手。


以上內(nèi)容是否對您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號
微信公眾號

編程獅公眾號