Eclipse Vert.x 4.5.4 发布,Java 微服务开发框架

来源: OSCHINA
2024-02-23 13:45:13

Eclipse Vert.x 是一个微服务开发框架,基于事件和异步,依托于全异步 Java 服务器 Netty,并扩展了很多其他特性,以其轻量、高性能、支持多语言开发而备受开发者青睐。

Eclipse Vert.x 版本 4.5.4 现已发布一些弃用和破坏性变更包括:

Vert.x Core

TCP 客户端 TLS 配置的破坏性变更

https://github.com/eclipse-vertx/vert.x/pull/5117

NetClient的TLS 配置不再将默认主机名验证算法设置为空字符串,而是客户端的用户必须使用非空字符串明确配置主机名验证算法。

// Before
NetClient client = vertx.createNetClient(new NetClientOptions().setSsl(true).setTrustOptions(trustedCert));

// After 
String algo = ...;
NetClient client = vertx.createNetClient(new NetClientOptions().setSsl(true).setHostnameVerificationAlgorithm(algo).setTrustOptions(trustedCert));

验证算法可以是以下之一:

因此,Vert.x Redis 客户端 TLS 配置必须在 TCP 客户端选项上明确设置算法。

// Before
redisOptions.setNetClientOptions(new NetClientOptions().setSsl(true).setTrustOptions(cert));

// After
redisOptions.setNetClientOptions(new NetClientOptions().setSsl(true).setTrustOptions(cert).setHostnameVerificationAlgorithm(algo));

因此,Vert.x MQTT 客户端 TLS 配置必须在 MQTT 客户端选项上明确设置算法。

// Before
mqttClientOptions.setSsl(true).setTrustOptions(cert);

// After
mqttClientOptions.setSsl(true).setTrustOptions(cert).setHostnameVerificationAlgorithm(algo);

Deprecation of HTTP connection shutdown with a timeout

https://github.com/eclipse-vertx/vert.x/pull/5115

弃用HttpConnection#timeout(long),替换为HttpConnection#timeout(long, TimeUnit)

// Before
connection.shutdown(5 * 1000); // 5 seconds

// After
connection.shutdown(5, TimeUnit.SECONDS);

更多详情可查看 4.5.4 发行说明

展开阅读全文
点击引领话题📣 发布并加入讨论🔥
0 评论
0 收藏
分享
返回顶部
顶部