Vertx 初探
Vertx 是一个Java 异步编程的工具框架,使用Vertx 编写异步的,高性能与低内存占用的项目。
2014年发布,经历 2.0 版本,3.0版本发布才全球火爆,国外技术圈中比较出名,国内主要是Spring的天下,相对较少。
但是Spring6 版本出来后,惊奇的发现Spring的技术栈逐步也切换到异步高性能模式(基于Spring project reactor项目实现),可以说与Vertx 异曲同工,所以掌握Vertx 对于了解Java 技术趋势多有裨益。
走起
创建Maven项目,增加对Vertx 的依赖
<dependency>
<groupId>io.vertx</groupId>
<artifactId>vertx-core</artifactId>
<version>4.5.8</version>
</dependency>
这里要提到Vertx 的版本信息,这就要说Vertx 是Redhat 赞助,平均3个月一个版本,大版本之间有部分兼容问题,大版本内容兼容性好,
当前 4.5.8 ,Vertx5.0 版本会在 2024年9月发布,4到5 的迁移难度不达,都是依赖Netty 4,不会迁移到Netty5 。评估的理由是Netty5 目前变化太大,不利于Vertx 的兼容性。所以放心食用,呵呵。
最简单的使用,用Vertx 创建一个HTTP Server
package org.example;
import io.vertx.core.Handler;
import io.vertx.core.Vertx;
import io.vertx.core.http.HttpServerRequest;
public class Main {
private static void requestHandler(HttpServerRequest request){
request.response().end("hello world");
}
public static void main(String[] args) {
// 声明一个单例的Vertx Instance ,
// 所以如果的集群的Vertx,就需要Vertx.cluster(ClusterConfig)
Vertx vertx = Vertx.vertx();
vertx.createHttpServer(