Micronaut基准测试:比Quarkus和Spring Boot快吗?

我们想要什么? 速度 哪个是最快的微服务框架? Quarkus,Micronaut和Spring Boot是Java的三个现代框架,它们共享相似的特性和功能。

虽然这三种服务都有其优点,缺点和独特的用例,但它们常常相互抵触。

哪个最快,哪个内存消耗最少?

还请参见: Java 14 –“ NullPointerExceptions是一项重大改进”

Quarkus,Micronaut和Spring Boot

让我们快速浏览一下这三个框架。

由Red Hat开发的Quarkus是一种“超音速亚原子Java”,不仅有趣,而且描述完美。 它是为OpenJDK HotSpot和GraalVM设计的Kubernetes原生Java堆栈,并包含最佳的Java库和标准。 Quarkus的优点之一是其快速的启动时间。

Micronaut是基于云的基于JVM的多语言全栈框架,用于构建微服务和无服务器应用程序。 无论您的代码库大小如何,它都具有较低的内存消耗。 请查看 Micronaut 2.0.0.M2发行指南 。

Spring Boot是一个开源Java框架,可以轻松地使用嵌入式Tomcat,Jetty或Undertow创建独立的生产级Spring应用程序和微服务。 Spring Boot应用程序几乎不需要配置,因此可以“正常运行”。

所有这些框架都要求速度,但是只有一个是最快的

对它们进行测试

OCI Grails&Micronaut产品负责人兼首席软件工程师Graeme Rocher 发表了一份报告,比较了JDK 14上Micronaut,Quarkus和Spring Boot的速度 。

该测试使用2019 iMac Pro Xeon 8 Core在JDK 14上测试了Micronaut 2.0 M2,Quarkus 1.3.1和Spring Boot 2.3 M2。

以下是基准测试的结果,取自10次运行的平均值:

Micronaut基准测试:比Quarkus和Spring Boot快吗?_第1张图片

基准结果。 来源 。

该测试确认Quarkus的启动时间与890ms的首次响应时间不匹配。 对于./mvn干净的编译,Spring在编译时最好,为1.33s。 (Graeme Rocher指出这是因为Spring不执行任何编译时处理。)

但是,从表中可以看到,在所有其他任务中,Micronaut处于领先地位,并且在三项负载测试之后内存消耗最低。

Graeme Rocher写道:

Quarkus团队对Quarkus的内存效率提出了大胆的主张,因此令人惊讶的是,在进行实际测试时似乎发现了这样的差距,这些差异似乎反驳了这些主张。 我和Micronaut团队感到失望的是,我们不得不承担起执行这些测试并发布结果的责任,这不是一个简单的机会来帮助其他人改进他们的流程和应用程序,而是应对理论上可以做到的错误信息。相反。

还请参见: Java 14 –“较短的发布周期会产生一种语言在不断发展的感觉”

源代码

为了防止报告偏差, 示例的源代码可在GitHub上找到,供用户在自己的计算机上进行测试。

观看YouTube上的效果比较视频 。

归根结底,这里的要点是这三个都非常快。 Micronaut,Quarkus和Spring框架都具有出色的性能,并且可能会随着将来的更新而不断提高。

您的电话号码不同吗? 您更喜欢哪种JVM框架?

翻译自: https://jaxenter.com/micronaut-speed-test-170870.html

你可能感兴趣的:(Micronaut基准测试:比Quarkus和Spring Boot快吗?)