数据结构论坛

首页 » 分类 » 定义 » Quarkus面向Java开发人员的云原
TUhjnbcbe - 2021/4/23 18:10:00
最好白癜风医院电话         http://m.39.net/pf/a_4442957.html
导读:本文介绍一款名为Quarkus的云原生开源框架。

Quarkus是为OpenJDKHotSpot和GraalVM量身定制的Kubernetes原生Java技术栈。

Quarkus于年7月发布第一个稳定版。

Quarkus框架是RedHatRuntimes的一部分,该系列产品是可以开发和维护云原生应用程序的一系列产品、工具和组件。

Quarkus是开源的,占用空间很少,仅需要很少内存就可以快速加载,从而使得Quarkus成为基于同样精简的RedHat的分布式云架构平台的理想选择。

作为一种全栈技术,Quarkus在服务器和客户端级别均可使用。

该环境基于Java虚拟机(JVM)开发,可以利用Java利用Kubernetes对虚拟化的应用程序组件进行编程。

Quarkus专门针对容器编译和优化本机Java代码,使其成为Serverles,云和Kubernetes环境占主导地位的世界的高效平台。

Quarkus还可以优化未编译的Java技术栈,能够在本地使用OpenJDK的情况下(即在非编译环境中)也可确保性能提高。

开发者易于配置

Quarkus不是即插即用技术,但不需要很复杂就可以配置并快速应用。该平台提供实时编码功能,开发者可以立即查看代码更改后的影响、实时修复Bug。

在设置Quarkus时,开发人员可以为可以在JVM模式下运行,也可以在本机模式下编译并运行的应用程序,选择自己喜欢的Java框架。

Quarkus基于著名的Java库,团阶是经验丰富的Java开发者,沉淀了二十多年的标准,事实上也说明了Java开发人员对该框架高度认可。

对于Java专业人员来说,使用Quarkus的学习曲线很小。即使Quarkus本身是一个框架:Kubernetes原生Java堆栈也与大多数框架和实用程序能够紧密合作。

反应式与命令式编程

Quarkus联合创始人JasonGreene曾担任RedHat高级工程师兼经理,他希望用Quarkus让Java成为Kubernetes和Servless环境中的领先平台。

Greene希望为开发人员提供一个反应式和命令式的编程模型,以便能够解决更广泛的分布式应用程序体系结构。

传统的命令式编程将仍然是可预见的未来的中心基础,而现代的响应式开发则能够处理异步,非顺序的数据事件,是开发可扩展和动态云应用程序的理想补充。

反应式编程的一个很好的例子是NodeJS和AWS在Lambda上流行的无服务器计算的使用。AWS拥有适当的反应模型业务逻辑,但不必使用内存。而是,在需要时将实例带入实时生产环境就足够了。

1Native方式

$mvpackage-Pnative

或者:

./gradlewbuildNative

2命令式

InjectSayServicesay;

GET

Produces(MediaType.TEXT_PLAIN)publicStringhello(){returnsay.hello();}

3反应式

Inject

Channel("kafka")PublisherStringreactiveSay;

GET

Produces(MediaType.SERVER_SENT_EVENTS)publicPublisherStringstream(){returnreactiveSay;}

Quarkus与OpenShift集成

Quarkus是基于开源容器应用程序平台RedHatOpenShift4.6的一部分,自年11月以来向开发者提供。

数据调查显示,五分之一的使用云的Java开发人员已经在考虑使用Quarkus。由于Quarkus是Kubernetes原生的,因此从一开始就能够将技术与OpenShift结合使用是具备更多意义的。

为了方便开发者开始使用Quarkus,RedHat已更新了“应用程序迁移工具包”。该工具包已经实践了很多年,可以帮助将各种应用程序迁移到不同的平台(例如,从Oracle的WebLogic切换到RedHatEAP)。通过将工具包与Quarkus集成,开发人员可以得到系统提供的建议,实现无需完全代码重构即可实现集成。

RedHat为开发人员使用Quarkus铺平了道路,支持他们将框架集成到自己的环境中-从数据中心到外部设备,物联网和边缘计算,从而遍及整个公有云。

这意味Quarkus的世界没有障碍。

相关引用:

1
查看完整版本: Quarkus面向Java开发人员的云原