Micronaut 2.0.0 发布,原生云原生微服务框架

oschina
 oschina
发布于 2020年06月27日
收藏 15

Micronaut 2.0.0 已经发布。Micronaut 是一个新一代基于 JVM 的全栈微服务框架,用于构建模块化的、易于测试的微服务应用。

此版本主要变化包括:

核心功能上现在支持 JDK 14,支持用 Groovy 3 编写的应用程序;改进了启动性能,新应用程序的启动时间快了约 20%;改进了 Bean 自我检查(Bean introspection)功能,以支持静态创建者方法、接口和枚举,这意味着可以在具有私有实现的接口上定义 bean introspection,例如:

import io.micronaut.core.annotation.Creator;

@io.micronaut.core.annotation.Introspected
interface Example {
    String getName();

    @Creator
    static Example create(String name) {
        return () -> name;
    }
}

支持 bean 急切初始化;依赖注入实现已得到改进,现在可以向任何 @Factory 方法接收 InjectionPoint 实例,这样可以在注入 bean 时基于注释元数据自定义 bean 的创建方式。

CLI 功能上,Micronaut 的mnCLI 命令已经用 Micronaut 本身重写,现在已编译成 Linux、macOS 和 Windows 上可用的本机镜像;使用 curl 命令 curl https://launch.micronaut.io/demo.zip -o demo.zip 可创建 Micronaut 2.0 应用而不需安装 CLI。

其它更新包括mn feature-diff --features=[FEATURE NAME]从另一个 Micronaut 项目的根开始扫描,启用更改差异分析。

$ mn feature-diff --features=azure-function
--- micronaut-cli.yml
+++ micronaut-cli.yml
@@ -3,4 +3,4 @@
 testFramework: junit
 sourceLanguage: java
 buildTool: gradle
-features: [app-name, application, gradle, http-client, java, junit, logback, netty-server, shade, yaml]
+features: [app-name, application, azure-function, azure-function-http, gradle, java, junit, logback, yaml]


--- host.json
+++ host.json
@@ -1,0 +1,7 @@
+{
+  "version": "2.0",
+  "extensionBundle": {
+    "id": "Microsoft.Azure.Functions.ExtensionBundle",
+    "version": "[1.*, 2.0.0)"
+  }
+}

Micronaut 2 对 Gr​​aalVM 本机镜像的支持已脱离实验状态;不再需要为本机镜像构建配置静态资源;不再需要提供其它与 GraalVM 相关的配置来通过 JDBC 或 Hibernate/JPA 连接到数据库,Micronaut 通过 GraalVM 本机镜像自动支持以下驱动程序:Oracle、MariaDB、Postgres、MS SQL、H2 与 MySQL。

同时 Micronaut 基于 Netty 的 HTTP 客户端和服务器已更新为支持 HTTP/2;Micronaut 2.0 EventLoopGroup对服务器工作线程和客户端请求线程使用新的共享默认 Netty,这减少了上下文切换并提高了资源利用率,从 Micronaut 2.0 开始,默认情况下,所有操作都执行EventLoop。

此外还有一系列变化,包括通过扩展支持 Kotlin、添加代理请求 API、Serverless 相关改进、缓存已移至一个单独的模块中,并且已移出micronaut-runtime以及各种模块更新等。详情查看:https://docs.micronaut.io/2.0.0/guide/index.html

本站文章除注明转载外,均为本站原创或编译。欢迎任何形式的转载,但请务必注明出处,尊重他人劳动共创开源社区。
转载请注明:文章转载自 开源中国社区 [http://www.oschina.net]
本文标题:Micronaut 2.0.0 发布,原生云原生微服务框架
加载中

精彩评论

开源中国首席罗纳尔多
开源中国首席罗纳尔多
您好,请问云原生是什么意思?
哈哈爱兮爱兮乎乎
支持 bean 急切初始化;

这是什么意思?在线等回答。
风云0312
风云0312
刚看到,Micronaut创始人去Oracle了,有什么瓜?
红薯片
红薯片
对云原生支持很好的微服务框架呗, 这两个又不冲突
c
crystalsis
原生/云原生/微服务/框架,就是不知道编辑为什么弄了个这么别扭的标题

最新评论(10

哈哈爱兮爱兮乎乎
支持 bean 急切初始化;

这是什么意思?在线等回答。
风云0312
风云0312
刚看到,Micronaut创始人去Oracle了,有什么瓜?
hotsmile
hotsmile
其实我对spring boot 不喜,启动太慢~!!
红薯片
红薯片
对云原生支持很好的微服务框架呗, 这两个又不冲突
开源狂人
开源狂人
名字挺好,怎么个原生呢
宇宙蒙面侠X
宇宙蒙面侠X
能完美支持mybatis吗?
c
crystalsis
原生/云原生/微服务/框架,就是不知道编辑为什么弄了个这么别扭的标题
开源中国首席罗纳尔多
开源中国首席罗纳尔多
您好,请问云原生是什么意思?
not3
not3
官方文档都移动端不友好。
quarkus的移动端显示就比较正常
鬼面书生灬
鬼面书生灬
到底是原生云框架还是原生微服务框架?
返回顶部
顶部