JGroups 5.0 首个 alpha 版发布,经典 Java 组播通讯框架

局长
 局长
发布于 2020年01月31日
收藏 12

JGroups 5.0 的首个 Alpha 版本已发布,此版本对 API 进行了重大变更。开发团队还透露在首个测试版发布之前,可能还会有更多的 API 变更。

下面了解一下 5.0 的新功能。

5.0 最大的变化是 Message(消息)现在变成了接口,并提供了不少实现它的消息类,罗列几个如下:

  • BytesMessage:这是旧的 4.x Message 类的替代方案,具有一个字节数组作为有效负载
  • ObjectMessage:支持接收一个对象作为有效负载
  • NioMessage:具有 NIO ByteBuffer 作为有效负载
  • EmptyMessage:这个类不包含负载,主要用于发送仅包括 header 的消息,例如心跳信息。JGroups 内部主要使用此类,它的内存占用量极低
  • CompositeMessage:用于携带其他消息的消息类型

这个变动的主要优点是使用了不同的消息类型,即不必像 4.x 消息中那样将有效载荷编组为字节数组,现在可以将有效载荷添加到消息中而无需进行编组,仅在网络中发送消息之前才进行编组。这种方式节省了一次内存分配。

另一个优点是应用程序可以注册自己的消息类型,这意味着我们可以控制消息的创建方式,例如使用堆外内存(off-heap memory)而不是堆内存。

其他值得注意的变更包括:

  • 移除了许多繁琐的东西,例如一些 AuthToken 实现:SASL, S3_PING 和 GOOGLE_PING (现在有了更好的替代方案)
  • 首个 Alpha 版本仍可在 Java 8 下运行,但 Java 11 将会是未来的基础,团队表示将会使用 Java 11 的特有语言特性

完整变更列表点此查看

5.0 文档地址:http://www.jgroups.org/manual5/index.html 

本站文章除注明转载外,均为本站原创或编译。欢迎任何形式的转载,但请务必注明出处,尊重他人劳动共创开源社区。
转载请注明:文章转载自 OSCHINA 社区 [http://www.oschina.net]
本文标题:JGroups 5.0 首个 alpha 版发布,经典 Java 组播通讯框架
加载中
返回顶部
顶部