JGroups简介

JGroups是一个开源的纯java编写的可靠的群组通讯工具。其工作模式基于IP多播,但可以在可靠性和群组成员管理上进行扩展。其结构上设计灵活,提供了一种灵活兼容多种协议的协议栈,对于每个产品都有不同的可靠性需求。这种协议栈可以让用户定义的自己可靠性指标和性能指标。

可靠性:

    * 通过使用重传丢失信息的技术保证每条群组消息被发送到所有接收者;

   * 将大块消息分解为多个小块消息发送,并在接收方重新组装;

   * 确保消息的顺序性,例如由发送者P发送的两条消息m1和m2按照相同的顺序(FIFO)被所有接收者接收;

   * 保证消息收发的原子性,一条消息或者被所有接收者接收或者没有一个接收者收到。

群组成员管理:

   * 轻松获得每个分组的成员信息;

   * 当新成员加入、当前成员离开或者一个当前成员掉线时,组内成员均会获得通知。

JGroups支持的多种协议堆栈:

下表是JGroups支持的协议:
工作模式                    不可靠的                       可靠的
单播                         UDP                                         TCP
多播                         IP多播                         JGroups

本次发布的新版本,主要是增加了对不关联的消息的同步传输和处理,而之前的版本是遵循FIFO 先进先出原则。

这个新特性,对于一个拥有几个不同进程而经常发送大量不相关的消息的应用,将会带来很大的性能改进。

官方站点:
http://www.jgroups.org/

你可能感兴趣的:(设计模式,工作)