基于路由机制的多终端pub/sub消息同步方法

文档序号:9891497阅读:324来源:国知局
基于路由机制的多终端pub/sub消息同步方法
【技术领域】
[0001]本发明涉及通信领域的多终端消息同步技术,具体地说是一种基于路由机制的多终端PUB/SUB消息同步方法。
【背景技术】
[0002]订阅发布模型,是一种异步消息传输模型,它定义了应用程序模型,把消息的发布者与消息的订阅者以一种松稱合的方式联系在一起,它们不需要知道对方的任何信息,甚至不需要知道对方是否存在,就可以实现消息的异步传递。发布者和订阅者之间通过主题交换信息:发布者把信息发布到主题字符串,订阅者在主题上注册并接收信息,通过这种方式主题字符串把发布者和订阅者连接起来。
[0003]现有技术中,同一用户如果拥有多个终端设备,多个终端设备同时使用基于订阅发布模型的应用程序,任意一个终端发布消息给其订阅者时,该用户的各终端之间无法感知其他终端的动作,即消息不能做到发送方的多个终端同步,导致用户可能会重复在多个终端中执行相同的操作,给用户带来极大的不便。

【发明内容】

[0004]针对现有技术的不足,本发明提供一种基于路由机制的多终端PUB/SUB消息同步方法,可在基于订阅发布模型的消息系统中实现多终端消息的同步。
[0005]本发明为实现上述目的所采用的技术方案是:一种基于路由机制的多终端PUB/SUB消息同步方法,包括以下步骤:
[0006]步骤1:为基于订阅发布模型应用的服务器定义消息路由规则;
[0007]步骤2:当所述服务器接收到所述应用发送的消息后,所述服务器根据消息的接收主题查找匹配的路由规则;
[0008]步骤3:若所述服务器在消息路由规则中查找到匹配的路由规则,则所述服务器根据路由规则中的路由方式向路由规则目的主题发起相应的消息路由操作。
[0009]若所述匹配到的消息路由规则目的主题为所述应用所在用户对应的其他终端的主题,且消息路由方式为复制消息,则向用户的其他终端发起消息同步操作。
[0010]所述消息路由规则包括源主题、目的主题、路由方式。
[0011 ] 所述路由方式包括复制消息、转发消息、丢弃消息、忽略消息。
[0012]所述查找匹配的路由规则的过程为:比较服务器接收消息的目的主题与消息路由规则中的源主题,找到与消息路由规则中源主题相同或属于源主题类中一个具体主题的目的主题和消息路由方式,即为匹配的路由规则。
[0013]所述比较服务器接收消息的目的主题与消息路由规则中的源主题包括:完全比较和模糊比较。
[0014]所述完全比较为:服务器接收消息的目的主题与消息路由规则中的源主题是同一个主题。
[0015]所述模糊比较为:消息路由规则的源主题是一类主题,服务器接收消息的目的主题属于其中一个。
[0016]本发明具有以下有益效果及优点:
[0017]本发明能够在所述基于订阅发布模型的应用中,若应用发布消息到一个主题后,服务器可以根据主题查询消息路由规则向查询到的路由规则对应的目的主题发起消息同步操作,进一步可以通过路由规则的定制实现用户多终端的消息同步,避免了现有技术中由于不能同步所导致的用户可能会重复在多个应用终端中执行相同的操作的问题,实现了自动化、可定制化的多终端消息同步。
【附图说明】
[0018]图1为本发明的方法流程图。
【具体实施方式】
[0019]下面结合附图及实施例对本发明做进一步的详细说明。
[0020]以下将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,应当理解,此处所描述的实施例仅仅用于说明和解释本发明,但不用于限定本发明。
[0021]如图1所示,本实施例的所述基于路由机制的多终端PUB/SUB消息同步方法包括:
[0022]图中客户端1-1、客户端1-2、客户端2是三个基于订阅发布模型的应用的客户端,客户端1-1和客户端1-2是客户I的两个终端,客户端2是客户2的一个终端;服务器是基于订阅发布模型的服务器,其中内置了消息路由模块。假设消息路由规则已经定义好,并且已经加载到服务器中。
[0023]具体的,所述消息路由规则包括源主题、目的主题、路由方式。
[0024]具体的,所述路由方式包括复制消息、转发消息、丢弃消息、忽略消息。
[0025]SlOl:消息发送方的第一终端,即所述客户I的客户端1-1向客户2发送消息。消息首先发往客户2在服务器的主题上。
[0026]S102:服务器接收到客户I的终端即所述客户端1-1发来的消息,向客户I的终端即所述客户端1-1回复接收到消息的通知。
[0027]S103:服务器根据接收到的客户I的终端即所述客户端1-1发来的消息的接收者的主题,调用消息路由模块,查找是否有匹配的路由规则。若没有匹配到相关路由规则,则消息正常转发给接收者。此处,查找到匹配的路由规则,路由规则的目的主题为客户端1-2的主题,路由方式为复制消息。
[0028]其中,所述查找匹配的路由规则的过程为:比较服务器接收消息的目的主题与消息路由规则中的源主题,找到与消息路由规则中源主题相同或属于源主题类中一个具体主题的目的主题和消息路由方式,即为匹配的路由规则。
[0029]具体的,所述比较服务器接收消息的目的主题与消息路由规则中的源主题包括:完全比较和模糊比较。
[0030]具体的,所述完全比较为:服务器接收消息的目的主题与消息路由规则中的源主题是同一个主题。
[0031]具体的,所述模糊比较为:消息路由规则的源主题是一类主题,服务器接收消息的目的主题属于其中一个。
[0032]S104:S103中根据消息接收者的主题,查询到了匹配的路由规则,根据路由规则中的目的地址及路由方式,将消息复制一份发送给客户I的第二终端即所述终端1-2。
[0033]其中,所述路由方式为复制消息,即将接收到的消息复制一份到路由规则目的主题,消息仍会发送到原目的主题。
[0034]S105:客户I的其他终端即所述客户端1-2向服务器回复已接收到消息的通知。
[0035]S106:服务器向客户2的终端即所述终端2发送客户I发送给客户2的消息。
[0036]S107:客户2的终端即所述客户端2向服务器回复已接收到消息的通知。流程结束。
[0037]客户I的非消息发送终端即客户端1-2接收到客户I消息发送终端即客户端1-1发送给客户2的消息,实现了发送方的多终端消息同步操作。
【主权项】
1.一种基于路由机制的多终端PUB/SUB消息同步方法,其特征在于:包括以下步骤: 步骤1:为基于订阅发布模型应用的服务器定义消息路由规则; 步骤2:当所述服务器接收到所述应用发送的消息后,所述服务器根据消息的接收主题查找匹配的路由规则; 步骤3:若所述服务器在消息路由规则中查找到匹配的路由规则,则所述服务器根据路由规则中的路由方式向路由规则目的主题发起相应的消息路由操作。2.根据权利要求1所述的基于路由机制的多终端PUB/SUB消息同步方法,其特征在于:若所述匹配到的消息路由规则目的主题为所述应用所在用户对应的其他终端的主题,且消息路由方式为复制消息,则向用户的其他终端发起消息同步操作。3.根据权利要求1或2所述的基于路由机制的多终端PUB/SUB消息同步方法,其特征在于:所述消息路由规则包括源主题、目的主题、路由方式。4.根据权利要求3所述的基于路由机制的多终端PUB/SUB消息同步方法,其特征在于:所述路由方式包括复制消息、转发消息、丢弃消息、忽略消息。5.根据权利要求1所述的基于路由机制的多终端PUB/SUB消息同步方法,其特征在于:所述查找匹配的路由规则的过程为:比较服务器接收消息的目的主题与消息路由规则中的源主题,找到与消息路由规则中源主题相同或属于源主题类中一个具体主题的目的主题以及消息路由方式,即为匹配的路由规则。6.根据权利要求5所述的基于路由机制的多终端PUB/SUB消息同步方法,其特征在于:所述比较服务器接收消息的目的主题与消息路由规则中的源主题包括:完全比较和模糊比较。7.根据权利要求6所述的基于路由机制的多终端PUB/SUB消息同步方法,其特征在于:所述完全比较为:服务器接收消息的目的主题与消息路由规则中的源主题是同一个主题。8.根据权利要求6所述的基于路由机制的多终端PUB/SUB消息同步方法,其特征在于:所述模糊比较为:消息路由规则的源主题是一类主题,服务器接收消息的目的主题属于其中一个。
【专利摘要】本发明涉及一种基于路由机制的多终端PUB/SUB消息同步方法,为基于订阅发布模型应用的服务器定义消息路由规则;当所述服务器接收到所述应用发送的消息后,所述服务器根据消息的接收主题查找匹配的路由规则;若所述服务器在消息路由规则中查找到匹配的路由规则,则所述服务器根据路由规则中的路由方式向路由规则目的主题发起相应的消息路由操作。本发明能够在应用发布消息到一个主题后,服务器根据主题查询消息路由规则向查询到的路由规则对应的目的主题发起消息同步操作,进一步可以通过路由规则的定制实现用户多终端的消息同步,实现了自动化、可定制化的多终端消息同步。
【IPC分类】H04L29/08
【公开号】CN105656959
【申请号】
【发明人】王默涵, 杨海波, 贾正锋, 卜立平, 颜君志, 吴晓东
【申请人】中国科学院沈阳计算技术研究所有限公司
【公开日】2016年6月8日
【申请日】2014年11月13日
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1