1.2、Vert.x 简介

Eclipse Vert.x是用于在JVM上构建反应性应用程序的工具包

                                                                           -- Vert.x官网

Eclipse Vert.x(文档中称作Vert.x)是Eclipse 基金会的一个开源项目。

Vert.x于2012年由蒂姆·福克斯(Tim Fox)发起。

Vert.x不是框架而是工具包:核心库定义了用于编写异步网络应用程序的基本API,可以为应用程序选择有用的模块(例如数据库连接,监控,身份验证,日志记录,服务发现,集群支持等)。Vert.x基于Netty项目( 一个用于JVM的高性能异步网络库)。如果需要,Vert.x将允许您访问Netty内部组件,但一般来说,与原始Netty相比,Vert.x提供的更高级别的API可以更好地受益,而不会牺牲性能。

Vert.x不强加任何包装或构建环境。由于Vert.x核心本身只是一个常规的Jar库,它可以嵌入到打包为一组Jars的应用程序中,这是一个具有所有依赖关系的单个jar,或者甚至可以部署在流行的组件和应用程序容器中。

因为Vert.x是专为异步通信而设计的,与同步API(如Java servlet或java.net套接字类)相比,它可以用更少的线程处理更多的并发网络连接。Vert.x适用于大范围的应用程序:高容量消息/事件处理,微服务,API网关,移动应用程序的HTTP API等。Vert.x及其生态系统提供各种技术工具,用于构建端到端终端的反应性应用。

虽然可能听起来像Vert.x仅适用于苛刻的应用程序,但Vert.x对于更传统的Web应用程序非常有用。 我们将看到,代码将不仅保持相对容易理解,而且如果应用程序需要应对流量中突然出现峰值的情况,这些代码也已经具备了扩展的基本要素:异步处理事件。

最后,值得一提的是,Vert.x是多面手,因为它支持广泛流行的JVM语言:Java,Groovy,Scala,Kotlin,JavaScript,Ruby和Ceylon。在Vert.x中支持语言的目的不仅仅是提供对API的访问,而且还要确保特定于语言的API在每种目标语言中是惯用的(例如,,使用Scala的future代替Vert.x的future)。使用不同的JVM语言开发Vert.x应用程序的不同技术部分是很有可能的。

results matching ""

    No results matching ""