消息路由的方法、装置及系统制造方法及图纸

技术编号:13927560 阅读:47 留言:0更新日期:2016-10-28 10:18
本发明专利技术实施例提供一种消息路由的方法、装置及系统,所述方法包括:接收带有应用程序标识的应用程序发送的订阅消息的请求,所述订阅消息的请求包括消息标识;根据所述订阅消息的请求,生成所述应用程序标识与所述消息标识的订阅关系;根据所述订阅关系,将所述消息标识对应的消息发送给所述应用程序标识对应的应用程序。本发明专利技术实施例提供的消息路由的方法、装置及系统,通过根据订阅消息的请求生成应用程序标识与消息标识的订阅关系,根据所述订阅关系将所述消息标识对应的消息发送给所述应用程序标识对应的应用程序的方式自动调整消息路由的转发规则,避免了人工调整转发规则带来的较高的运维成本,提高了系统的可扩展性。

【技术实现步骤摘要】

本专利技术实施例涉及网络通信
,尤其涉及一种消息路由的方法、装置及系统
技术介绍
分布式系统由多个应用程序组成,各个应用程序之间大多都是通过RPC(Remote Procedure Call Protocol,远程过程调用协议)进行消息通信,在复杂的系统架构中,通常通过一专门负责消息路由的中间件(消息路由器)来为各程序转发消息,以使每个程序只需和消息路由器进行通信即可。现有技术方案中,消息路由器一般通过按照预先设置好的转发规则转发消息的方式来实现消息路由。上述消息路由方法的转发规则都是通过人工设置的,每次转发规则有变更的时候,都需要人工干预消息路由器以调整转发规则,这不仅造成很大的运维成本,而且系统可扩展性也比较差。
技术实现思路
本专利技术实施例提供一种消息路由的方法、装置及系统,用以解决现有技术中需要人工调整转发规则的缺陷。本专利技术实施例提供一种消息路由的方法,包括:接收带有应用程序标识的应用程序发送的订阅消息的请求,所述订阅消息的请求包括消息标识;根据所述订阅消息的请求,生成所述应用程序标识与所述消息标识的订阅关系;根据所述订阅关系,将所述消息标识对应的消息发送给所述应用程序标识对应的应用程序。本专利技术实施例提供一种消息路由的装置,包括:接收模块,用于接收带有应用程序标识的应用程序发送的订阅消息的请求,所述订阅消息的请求包括消息标识;处理模块,用于根据所述订阅消息的请求,生成所述应用程序标识与所述消息标识的订阅关系;发送模块,用于根据所述订阅关系,将所述消息标识对应的消息发送给所述应用程序标识对应的应用程序。本专利技术实施例提供一种消息路由的系统,包括上述消息路由的装置。本专利技术实施例提供的消息路由的方法、装置及系统,通过根据订阅消息的请求生成应用程序标识与消息标识的订阅关系,根据所述订阅关系将所述消息标识对应的消息发送给所述应用程序标识对应的应用程序的方式自动调整消息路由的转发规则,避免了人工调整转发规则带来的较高的运维成本,提高了系统的可扩展性。附图说明为了更清楚地说明本专利技术实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本专利技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。图1为本专利技术实施例1提供的消息路由的方法流程图;图2为本专利技术实施例2提供的消息路由的方法流程图;图3为本专利技术实施例提供的取消消息路由的方法流程图;图4为本专利技术实施例提供的另一取消消息路由的方法流程图;图5为本专利技术实施例3提供的消息路由的装置结构示意图。具体实施方式为使本专利技术实施例的目的、技术方案和优点更加清楚,下面将结合本专利技术实施例中的附图,对本专利技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本专利技术一部分实施例,而不是全部的实施例。基于本专利技术中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本专利技术保护的范围。实施例1参见图1,本专利技术实施例提供了一种消息路由的方法,包括:步骤101:接收带有应用程序标识的应用程序发送的订阅消息的请求,所述订阅消息的请求包括消息标识;具体地,消息路由基于TCP协议实现;应用程序通过一服务端口与消息路由器建立TCP连接,每一个连接均对应分配一个session(会话ID,即应用程序标识),用来代表一个应用程序;消息标识可以包括消息类型、消息内容、消息时间等标识,可以通过定义一个通用的消息协议格式的方式来获得,例如,通过协议头来标识消息类型(msgType),程序间通信须遵守此协议;消息路由器通过监听一服务端口(例如80)来接收每个session代表的应用程序发送来的订阅消息的请求,所述订阅消息的请求包括消息标识,假设所述消息标识为通过协议头标识的消息类型标识,一个应用程序可以同时订阅多个消息类型标识对应的多个消息。步骤102:根据所述订阅消息的请求,生成所述应用程序标识与所述消息标识的订阅关系;消息路由器维护一个动态的消息路由表(订阅关系表),即消息路由器根据网络系统的运行情况而自动调整路由表,消息路由器根据路由选择协议(Routing Protocol)提供的功能,自动学习和记忆网络运行情况,在需要时自动计算数据传输的最佳路径;所述动态的消息路由表由消息路由器根据session对应的应用程序发送的订阅消息的请求确定,例如,表1为应用程序标识与消息标识的订阅关系表,如表1所示应用程序标识为session-app1的应用程序发送了对消息标识为msgType-ABC的消息的订阅请求,生成msgType-ABC与session-app1的订阅关系,即在所述动态路由表中生成msgType-ABC转发至session-app1的规则;应用程序标识分别为session-app2、session-app4的两个应用程序分别发送了对消息标识为msgType-BCD的消息的订阅请求,生成msgType-BCD与session-app2、session-app4的订阅关系,即在所述动态路由表中生成msgType-BCD转发至session-app2、session-app4的规则;应用程序标识分别为session-app3、session-app4、session-app5的三个应用程序分别发送了对消息标识为msgType-BDF的消息的订阅请求,生成msgType-BDF与session-app3、session-app4、session-app5的订阅关系,即在所述动态路由表中生成msgType-BDF转发至session-app3、session-app4、session-app5的规则;应用程序标识为session-app5的应用程序发送了对消息标识为msgType-CDF的消息的订阅请求时,生成msgType-CDF与session-app5的订阅关系,即在所述动态路由表中生成msgType-CDF转发至session-app5的规则;表1所述的订阅关系表根据应用程序订阅消息的请求实时调整。表1应用程序标识与消息标识的订阅关系表:应用程序标识消息标识session-app1msgType-ABCsession-app2、session-app4msgType-BCDsession-app3、session-app4、session-app5msgType-BDFsession-app5msgType-CDF步骤103:根据所述订阅关系,将所述消息标识对应的消息发送给所述应用程序标识对应的应用程序。具体地,例如表1所示,将消息标识为msgType-ABC的消息发送给应用程序标识为session-app1的应用程序;将消息标识为msgType-BCD的消息发送给应用程序标识为session-app2的应用程序以及应用程序标识为session-app4的应用程序;将消息标识为msgType-BDF的消息发送给应用程序标识为session-app3的应用程序、应用程序标识为session-app4的应用程序以及应用程序标识为session-app5的应用程序;将消息标识为msgType-CDF的消息发送给应用程序标识为sessio本文档来自技高网...

【技术保护点】
一种消息路由的方法,其特征在于,包括:接收带有应用程序标识的应用程序发送的订阅消息的请求,所述订阅消息的请求包括消息标识;根据所述订阅消息的请求,生成所述应用程序标识与所述消息标识的订阅关系;根据所述订阅关系,将所述消息标识对应的消息发送给所述应用程序标识对应的应用程序。

【技术特征摘要】
1.一种消息路由的方法,其特征在于,包括:接收带有应用程序标识的应用程序发送的订阅消息的请求,所述订阅消息的请求包括消息标识;根据所述订阅消息的请求,生成所述应用程序标识与所述消息标识的订阅关系;根据所述订阅关系,将所述消息标识对应的消息发送给所述应用程序标识对应的应用程序。2.根据权利要求1所述的方法,其特征在于,还包括:接收应用程序的广播消息,所述广播消息包括消息标识。3.根据权利要求2所述的方法,其特征在于,还包括:查询所述订阅关系,判断所述订阅关系中是否包括所述广播消息的消息标识对应的订阅关系;当所述订阅关系中包括所述广播消息的消息标识对应的订阅关系时,则根据所述广播消息的消息标识对应的订阅关系,将所述广播消息的消息标识对应的所述广播消息发送给所述应用程序标识对应的应用程序;当所述订阅关系中不包括所述广播消息的消息标识对应的订阅关系时,丢弃所述广播消息的消息标识对应的所述广播消息。4.根据权利要求1-3任一项所述的方法,其特征在于,还包括:接收带有应用程序标识的应用程序发送的取消订阅的请求,所述取消订阅的请求包括取消订阅的消息标识;根据所述取消订阅的请求,取消所述应用程序的应用程序标识与所述取消订阅的消息标识的订阅关系。5.根据权利要求1-3任一项所述的方法,其特征在于,还包括:接收带有应用程序标识的应用程序的连接信号;当接收不到所述连接信号时,取消所述应用程序标识对应的所述订阅关系。6.根据权利要求1-3任一项所述的方法,其特征在于,所述订阅关系包括多个所述应用程序标识与一个所述消息标识的订阅关系,所述方法还包括:根据所述订阅关系,将所述消息标识对应的消息轮训发送给多个所述应用程序标识对应的多个应用程序。7.一种消息路由的装置,其特征在于,包括:接收模块,用于接收带有应用程序标识的应用程序发送的订阅消息的请求,所述订阅消息的请求包括消息标识;处理模块...

【专利技术属性】
技术研发人员:魏泽涛胡勇赵月显陈翔
申请(专利权)人:乐视控股北京有限公司乐视网信息技术北京股份有限公司
类型:发明
国别省市:北京;11

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1