[发明专利]发布/订阅消息中介有效
申请号: | 200980107504.0 | 申请日: | 2009-02-25 |
公开(公告)号: | CN101960825A | 公开(公告)日: | 2011-01-26 |
发明(设计)人: | G·E·琼斯;M·R·怀特黑德 | 申请(专利权)人: | 国际商业机器公司 |
主分类号: | H04L29/08 | 分类号: | H04L29/08 |
代理公司: | 北京市金杜律师事务所 11256 | 代理人: | 王茂华;黄倩 |
地址: | 美国纽*** | 国省代码: | 美国;US |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 发布 订阅 消息 中介 | ||
技术领域
本发明涉及操作发布/订阅消息中介(broker)的方法、消息中介本身以及用于操作发布/订阅消息中介的计算机可读介质上的计算机程序产品。
背景技术
发布/订阅(pub/sub)是异步消息收发范例(paradigm)。在pub/sub系统中,发布者向消息中介发出消息,而订阅者向该中介注册订阅。在基于话题的系统中,将消息发布至中介所管控的话题。基于话题的系统中的订阅者将接收向他们订阅的话题所发布的全部消息,并且对话题的所有订阅者将接收相同的消息。Pub/sub是非常有价值的范例,每个pub/sub消息按照消息本身的属性(通常是主题,有时是内容)进行路由。在每个消息到达时,作为第一步,中介分析该消息并且确定正确的订阅者集合,并且第二步相应地分发消息。系统是异步的。目前在发布订阅环境中,发布者可以向话题发布消息,订阅者可以接收关于该话题的消息。在某些情况下,将发布和订阅二者从指定的话题重定向至另一话题将是有益的。
发明内容
按照本发明的第一方面,提供一种操作发布/订阅消息中介的方法,包括:从发布者接收关于话题的消息;将该消息标识为消息序列的开始;向该话题的一个或多个已有订阅者传送该消息;使新订阅者注册该话题;从发布者接收关于该话题的进一步消息;以及向该话题的一个或多个已有订阅者传送所述进一步消息,但是不向已注册该话题的新订阅者传送该进一步消息。
按照本发明的第二方面,提供一种发布/订阅消息中介,该消息中介被安排为:从发布者接收关于话题的消息;将该消息标识为消息序列的开始;向该话题的一个或多个已有订阅者传送该消息;使新订阅者注册该话题;从发布者接收关于该话题的进一步消息;以及向该话题的一个或多个已有订阅者传送所述进一步消息,但是不向已注册该话题的新订阅者传送该进一步消息。
按照本发明的第三方面,提供一种计算机可读介质上的计算机程序产品,用于操作发布/订阅消息中介,该产品包括用于以下的指令:从发布者接收关于话题的消息;将该消息标识为消息序列的开始;向该话题的一个或多个已有订阅者传送该消息;使新订阅者注册该话题;从发布者接收关于该话题的进一步消息;以及向该话题的一个或多个已有订阅者传送所述进一步消息,但是不向已注册该话题的新订阅者传送该进一步消息。
根据优选实施方式,可以提供一种消息中介,其将操作话题,使得在该话题已经开始了一个序列的情况下,新订阅者将不会接收来自该话题的消息。优选实施方式描述了可以如何在无需客户端知识的情况下,将发布者和订阅者二者使用的话题重定向至一个或多个不同的话题。
这在发布必须全部接收才有意义的消息序列这一具体情况下将是有用的,也即,少接收一个消息都将不是有用的。考虑棋类游戏,其中发布者向特定话题发布游戏中的每个移动。对于订阅者来说,在游戏的半途接收这些发布将没有任何意义,因为在没有接收到先前消息(以便订阅者理解棋盘上所有棋子的当前位置)的情况下这是毫无意义的。
有益地,在操作消息中介的方法中,将消息标识为消息序列的开始的步骤,包括:访问接收到的消息的内容,并且根据访问的消息内容将该消息标识为消息序列的开始。消息中介必须识别新消息序列何时开始。一种易于实现的方式是:在接收消息的内容中查看消息内容中的显式或隐式标记,该标记指示该消息是新序列的开始。例如,发布者可以在消息体内包括预定标志,向消息中介指示该消息是新序列的第一个消息。如果没有标志,消息中介可以智能地配置为根据消息的内容来确定该消息是序列的开始。例如,在上文围绕棋类游戏的移动来维持的话题的示例中,例如“1.e4”或者类似内容的存在将指示新的序列。标识消息作为新序列的开始可以基于除消息内容之外的某些信息,例如,基于发布者的位置或者发送消息的时间(可能与发送先前消息的时间有关)。
优选地,操作消息中介的方法还包括:接收关于话题的又一消息;将该又一消息标识为消息序列的结束;以及向该话题的一个或多个已有订阅者以及向话题的新注册订阅者传送所有将来的消息。消息中介还可以配置用于:标识序列的结束;以及有效地终止与序列条件相关联的特殊操作过程。一旦确定了结束,则所有订阅者返回相同的基点(footing),并且将向所有订阅者(不论新老)发送关于该话题而接收的任何新消息。如果接收到另一个开始新序列的消息,则过程可以从头开始。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于国际商业机器公司,未经国际商业机器公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/200980107504.0/2.html,转载请声明来源钻瓜专利网。
- 上一篇:可变提升电压过程现场设备
- 下一篇:用于杀菌锅上的新型压紧装置