在本系列文章中,Terra10 摇滚乐手 Dirk Janssen 和 Roger Goossens 将探索 Spring Boot 生态系统之外的美丽新世界,并深入研究两个已经存在一段时间的有前途的微服务框架:Micronaut 和 Quarkus!
这两个框架有很多共同之处。如果我们将它们与 Spring Boot(目前事实上的微服务框架)进行比较,这两个框架都提供了以下额外功能:
它们是多语言框架,支持除了 Java 之外的更多语言;
他们承诺更快的启动时间和更低的内存消耗;
它们支持编译成 GraalVM 原生镜像。
至于最后一点,说实话,Spring Boot 最近也增加了对此的支持。不过,还是 开曼群岛号码数据 有足够的理由去检查这两个框架!
在这个系列中,德克将剖析 Quarkus,而罗杰将深入研究 Micronaut,并在过程中享用一杯正宗的啤酒。我们的方法是从所有微服务框架之母 Spring Boot 中构建的基线服务开始,并尝试在其他两个框架中复制其功能。最后,我们将比较框架,总结迁移的难易程度,研究附加值并报告任何缺少的功能。
因此,为了营造一点悬念,我们不会在本系列的介绍部分向您展示任何 Micronaut 或 Quarkus 代码,而是专注于构建参考 Spring Boot REST 服务。最终代码可以在GitHub上找到。
基线 BeerService
我们的基线服务从 MongoDB 获取数据。它的设置是典型的 Spring Boot,由几层组成:控制器层- 公开 REST API - 委托给服务层 - 协调 CRUD 功能 - 反过来委托给存储库层 - 负责持久性(可以在此处找到有关构建 Spring Boot - MongoDB 服务的良好教程)。
我们有一个单元测试来测试控制器逻辑,并且我们添加了 OpenApi 服务描述和 UI 以便更好地进行测量。
让我们稍微分解一下代码。
MongoDB
为了简单起见,我们使用官方的 MongoDB Docker 镜像,而不是在笔记本电脑上安装 MongoDB。有关在 Docker 的帮助下运行 MongoDB 的更多信息,请查看本教程。
Micronaut 与 Quarkus – 第一部分:Spring Boot 编年史
-
- Posts: 643
- Joined: Mon Dec 23, 2024 3:20 am