CN104580456A - 一种用于分布式系统的动态消息分发方法及系统 - Google Patents

一种用于分布式系统的动态消息分发方法及系统 Download PDF

Info

Publication number
CN104580456A
CN104580456A CN201410853956.6A CN201410853956A CN104580456A CN 104580456 A CN104580456 A CN 104580456A CN 201410853956 A CN201410853956 A CN 201410853956A CN 104580456 A CN104580456 A CN 104580456A
Authority
CN
China
Prior art keywords
cluster
packet
dynamic message
node
server
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN201410853956.6A
Other languages
English (en)
Other versions
CN104580456B (zh
Inventor
田野
刘朝
綦振
周远
姚秀萍
马炜镔
马天元
文大军
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Shenzhen Hai Yun New Energy Co ltd
Original Assignee
SHENZHEN GOLDWEB TECHNOLOGY Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by SHENZHEN GOLDWEB TECHNOLOGY Co Ltd filed Critical SHENZHEN GOLDWEB TECHNOLOGY Co Ltd
Priority to CN201410853956.6A priority Critical patent/CN104580456B/zh
Publication of CN104580456A publication Critical patent/CN104580456A/zh
Application granted granted Critical
Publication of CN104580456B publication Critical patent/CN104580456B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本发明公开了一种用于分布式系统的动态消息分发方法及系统通过采用分发逻辑表,使得当数据包的需求出现增加或变更时,不需要修改数据包发出者的信息,只需对分发逻辑表进行修改即可接收更多数据或改变数据包的发送路径,并且正在运行的服务器不会受到任何影响,有效提高系统的稳定性。而且本发明可根据实际需要增加数据采集功能,且不需要对服务器进行停机,不会干扰用户的正常使用,大大方便用户的使用。本发明作为一种用于分布式系统的动态消息分发方法及系统可广泛应用于分布式系统中。

Description

一种用于分布式系统的动态消息分发方法及系统
技术领域
本发明涉及通信领域,尤其涉及一种用于分布式系统的动态消息分发方法及系统。
背景技术
针对智能硬件领域的云服务,传统的消息路由方案,对集群的支持不好,对大数据的支撑不好,一旦需要接收更多的数据或者项目中需要新增数据收集功能, 一般都要求对服务器停机, 重新部署新软件,这样会导致影响到正在运行的服务器模块,不仅会影响系统稳定性,也为后期的维护带来了极大的不便。
发明内容
为了解决上述技术问题,本发明的目的是提供一种能适用于数据增加和变更,且不需重新部署服务器的一种用于分布式系统的动态消息分发方法及系统。
本发明所采用的技术方案是:
一种用于分布式系统的动态消息分发方法,包括以下步骤:
A、根据数据包的匹配信息和预设的匹配规则,在分发逻辑表中查找出对应节点;
B、获取对应节点的子节点中的集群;
C、根据预设的转发规则,将所述数据包转发至对应的处理服务器进行处理,并在处理后返回结果至通讯服务器。
作为所述的一种用于分布式系统的动态消息分发方法的进一步改进,还包括有数据采集步骤,其具体包括:
D1、在对应节点下增设用于数据采集的集群;
D2、根据数据包的匹配信息和预设的匹配规则,在分发逻辑表中查找出对应节点;
D3、获取对应节点的子节点中用于数据采集的集群;
D4、根据预设的转发规则,将数据包转发至对应的数据采集服务器进行数据收集。
作为所述的一种用于分布式系统的动态消息分发方法的进一步改进,所述数据包的格式包括有四个属性,其具体为消息标识、功能、操作动作和发送对象。
作为所述的一种用于分布式系统的动态消息分发方法的进一步改进,还包括:当需要对集群进行扩容时,则在另一服务器上启动该集群的镜像,并在该集群的节点下增加处理服务器,进而将数据包转发至新增的处理服务器进行处理。
作为所述的一种用于分布式系统的动态消息分发方法的进一步改进,所述集群中还设置有负载均衡策略,所述数据包可按照集群中的负载均衡策略转发至对应的处理服务器进行处理。
本发明所采用的另一技术方案是:
一种用于分布式系统的动态消息分发系统,包括:
查找模块,用于根据数据包的匹配信息和预设的匹配规则,在分发逻辑表中查找出对应节点;
获取模块,用于获取对应节点的子节点中的集群;
转发模块,用于根据预设的转发规则,将所述数据包转发至对应的处理服务器进行处理,并在处理后返回结果至通讯服务器。
作为所述的一种用于分布式系统的动态消息分发系统的进一步改进,还包括有数据采集模块,其具体包括:
集群增设单元,用于在对应节点下增设用于数据采集的集群;
节点查找单元,用于根据数据包的匹配信息和预设的匹配规则,在分发逻辑表中查找出对应节点;
集群获取单元,用于获取对应节点的子节点中用于数据采集的集群;
数据收集单元,用于根据预设的转发规则,将数据包转发至对应的数据采集服务器进行数据收集。
作为所述的一种用于分布式系统的动态消息分发系统的进一步改进,所述数据包的格式包括有四个属性,其具体为消息标识、功能、操作动作和发送对象。
作为所述的一种用于分布式系统的动态消息分发系统的进一步改进,还包括:
扩容模块,用于当需要对集群进行扩容时,则在另一服务器上启动该集群的镜像,并在该集群的节点下增加处理服务器,进而将数据包转发至新增的处理服务器进行处理。
作为所述的一种用于分布式系统的动态消息分发系统的进一步改进,所述集群中还设置有负载均衡策略,所述数据包可按照集群中的负载均衡策略转发至对应的处理服务器进行处理。
本发明的有益效果是:
本发明一种用于分布式系统的动态消息分发方法及系统通过采用分发逻辑表,使得当数据包的需求出现增加或变更时,不需要修改数据包发出者的信息,只需对分发逻辑表进行修改即可接收更多数据或改变数据包的发送路径,并且正在运行的服务器不会受到任何影响,有效提高系统的稳定性。而且本发明可根据实际需要增加数据采集功能,且不需要对服务器进行停机,不会干扰用户的正常使用,大大方便用户的使用。
附图说明
下面结合附图对本发明的具体实施方式作进一步说明:
图1是本发明一种用于分布式系统的动态消息分发方法的步骤流程图;
图2是本发明一种用于分布式系统的动态消息分发方法数据采集步骤的步骤流程图;
图3是本发明一种用于分布式系统的动态消息分发系统的模块方框图。
具体实施方式
参考图1,本发明一种用于分布式系统的动态消息分发方法,包括以下步骤:
A、根据数据包的匹配信息和预设的匹配规则,在分发逻辑表中查找出对应节点;
B、获取对应节点的子节点中的集群;
C、根据预设的转发规则,将所述数据包转发至对应的处理服务器进行处理,并在处理后返回结果至通讯服务器。
参考图2,作为所述的一种用于分布式系统的动态消息分发方法的进一步改进,还包括有数据采集步骤,其具体包括:
D1、在对应节点下增设用于数据采集的集群;
D2、根据数据包的匹配信息和预设的匹配规则,在分发逻辑表中查找出对应节点;
D3、获取对应节点的子节点中用于数据采集的集群;
D4、根据预设的转发规则,将数据包转发至对应的数据采集服务器进行数据收集。
作为所述的一种用于分布式系统的动态消息分发方法的进一步改进,所述数据包的格式包括有四个属性,其具体为消息标识、功能、操作动作和发送对象。
作为所述的一种用于分布式系统的动态消息分发方法的进一步改进,还包括:当需要对集群进行扩容时,则在另一服务器上启动该集群的镜像,并在该集群的节点下增加处理服务器,进而将数据包转发至新增的处理服务器进行处理。此时会重新计算哈希值, 部分数据包将会转发到新增的镜像中来处理。之前启动的两台服务器的负载会减轻。最终三个数据包大约每台承担三分之一的业务。
作为所述的一种用于分布式系统的动态消息分发方法的进一步改进,所述集群中还设置有负载均衡策略,所述数据包可按照集群中的负载均衡策略转发至对应的处理服务器进行处理。
参考图3,本发明一种用于分布式系统的动态消息分发系统,包括:
查找模块,用于根据数据包的匹配信息和预设的匹配规则,在分发逻辑表中查找出对应节点;
获取模块,用于获取对应节点的子节点中的集群;
转发模块,用于根据预设的转发规则,将所述数据包转发至对应的处理服务器进行处理,并在处理后返回结果至通讯服务器。
作为所述的一种用于分布式系统的动态消息分发系统的进一步改进,还包括有数据采集模块,其具体包括:
集群增设单元,用于在对应节点下增设用于数据采集的集群;
节点查找单元,用于根据数据包的匹配信息和预设的匹配规则,在分发逻辑表中查找出对应节点;
集群获取单元,用于获取对应节点的子节点中用于数据采集的集群;
数据收集单元,用于根据预设的转发规则,将数据包转发至对应的数据采集服务器进行数据收集。
作为所述的一种用于分布式系统的动态消息分发系统的进一步改进,所述数据包的格式包括有四个属性,其具体为消息标识、功能、操作动作和发送对象。
作为所述的一种用于分布式系统的动态消息分发系统的进一步改进,还包括:
扩容模块,用于当需要对集群进行扩容时,则在另一服务器上启动该集群的镜像,并在该集群的节点下增加处理服务器,进而将数据包转发至新增的处理服务器进行处理。
作为所述的一种用于分布式系统的动态消息分发系统的进一步改进,所述集群中还设置有负载均衡策略,所述数据包可按照集群中的负载均衡策略转发至对应的处理服务器进行处理。
本发明的具体实施例如下:
比如服务器收到如下一个数据包:
{
“header”:{
    “send_to”:”monica”,
    “module”:”switch”,
    “action”:”set”,
    “msg_id”:” 89028430e3a044ebb60fa940cf7bcead”
},
“body”:{
    …………
}
}
那么该数据包的匹配信息为:monica.switch.set。然后尝试匹配分发逻辑表中的节点“annie.*.*”、“emily.*.*”、“victoria.*.*”、“jennifer.*.*”、“monica.*.*”。按照预设的匹配规则,仅有“monica.*.*”符合条件。那么取出“monica.*.*”的子节点,子节点中含有“monica-controller”集群。其中monica-controller有两台服务器提供该服务,分别为“c56641d5-6aa9-4d50-ab5f-d802d15079c4”和“74c74fb2-f487-47a6-8186-37bedd019935”。根据转发规则,会将数据包按照“monica-controller”配置的负载均衡策略而转发给monica-controller中的其中一台服务器,如转发给“74c74fb2-f487-47a6-8186-37bedd019935”。该数据包由“74c74fb2-f487-47a6-8186-37bedd019935”处理该数据包后返回结果给通讯服务器。
当用于数据采集的集群增设在节点“monica.switch.set”中,则在匹配查找时,“monica.switch.set”符合条件,那么取出“monica.switch.set”的子节点, 子节点中含有“data-collector”集群。根据转发规则,会将消息按照“data-collector”配置的负载均衡策略而转发data-collector中的其中一台服务器,如转发给“b3db097e-fac4-86cf-ec43b898b618” 。由于此处仅仅做数据收集,因此data-collector收到报文后不需要返回给发送者。
采用本发明的技术方案后,当数据包需求出现增加或者变更时,不需要修改数据包的发出者,仅需要修改分发信息表即可使某个模块收到更多的数据。比如以上的实施例中,当需要增加一个新的数据分析模块。这个模块需要获取到所有的module为“switch”的数据包。那么就可以新增一个“*.switch.*”的分发节点,并在这个节点下增加一个新模块的名称节点,并配置负载均衡规则,那么即可在分发所有的module为“switch”的数据包时也会收到一个相同的数据包。这样即可完成新的数据分析模块的添加,同时目前正在运行的模块不会受到任何影响。而不使用本发明描述的方法时则需要重新修改数据包发出者的代码并重新启动该程序才能够完成同样的功能,既影响系统稳定性,也为后期的维护带来了极大的不便。
从上述内容可知,本发明通过采用分发逻辑表,使得当数据包的需求出现增加或变更时,不需要修改数据包发出者的信息,只需对分发逻辑表进行修改即可接收更多数据或改变数据包的发送路径,并且正在运行的服务器不会受到任何影响,有效提高系统的稳定性。而且本发明可根据实际需要增加数据采集功能,且不需要对服务器进行停机,不会干扰用户的正常使用,大大方便用户的使用。
以上是对本发明的较佳实施进行了具体说明,但本发明创造并不限于所述实施例,熟悉本领域的技术人员在不违背本发明精神的前提下还可做作出种种的等同变形或替换,这些等同的变形或替换均包含在本申请权利要求所限定的范围内。

Claims (10)

1.一种用于分布式系统的动态消息分发方法,其特征在于,包括以下步骤:
A、根据数据包的匹配信息和预设的匹配规则,在分发逻辑表中查找出对应节点;
B、获取对应节点的子节点中的集群;
C、根据预设的转发规则,将所述数据包转发至对应的处理服务器进行处理,并在处理后返回结果至通讯服务器。
2.根据权利要求1所述的动态消息分发方法,其特征在于,还包括有数据采集步骤,其具体包括:
D1、在对应节点下增设用于数据采集的集群;
D2、根据数据包的匹配信息和预设的匹配规则,在分发逻辑表中查找出对应节点;
D3、获取对应节点的子节点中用于数据采集的集群;
D4、根据预设的转发规则,将数据包转发至对应的数据采集服务器进行数据收集。
3.根据权利要求1所述的动态消息分发方法,其特征在于,所述数据包的格式包括有四个属性,其具体为消息标识、功能、操作动作和发送对象。
4.根据权利要求1所述的动态消息分发方法,其特征在于,还包括:当需要对集群进行扩容时,则在另一服务器上启动该集群的镜像,并在该集群的节点下增加处理服务器,进而将数据包转发至新增的处理服务器进行处理。
5.根据权利要求1所述的动态消息分发方法,其特征在于,所述集群中还设置有负载均衡策略,所述数据包可按照集群中的负载均衡策略转发至对应的处理服务器进行处理。
6.一种用于分布式系统的动态消息分发系统,其特征在于,包括:
查找模块,用于根据数据包的匹配信息和预设的匹配规则,在分发逻辑表中查找出对应节点;
获取模块,用于获取对应节点的子节点中的集群;
转发模块,用于根据预设的转发规则,将所述数据包转发至对应的处理服务器进行处理,并在处理后返回结果至通讯服务器。
7.根据权利要求6所述的动态消息分发系统,其特征在于,还包括有数据采集模块,其具体包括:
集群增设单元,用于在对应节点下增设用于数据采集的集群;
节点查找单元,用于根据数据包的匹配信息和预设的匹配规则,在分发逻辑表中查找出对应节点;
集群获取单元,用于获取对应节点的子节点中用于数据采集的集群;
数据收集单元,用于根据预设的转发规则,将数据包转发至对应的数据采集服务器进行数据收集。
8.根据权利要求6所述的动态消息分发系统,其特征在于,所述数据包的格式包括有四个属性,其具体为消息标识、功能、操作动作和发送对象。
9.根据权利要求6所述的动态消息分发系统,其特征在于,还包括:
扩容模块,用于当需要对集群进行扩容时,则在另一服务器上启动该集群的镜像,并在该集群的节点下增加处理服务器,进而将数据包转发至新增的处理服务器进行处理。
10.根据权利要求6所述的动态消息分发系统,其特征在于,所述集群中还设置有负载均衡策略,所述数据包可按照集群中的负载均衡策略转发至对应的处理服务器进行处理。
CN201410853956.6A 2014-12-31 2014-12-31 一种用于分布式系统的动态消息分发方法及系统 Expired - Fee Related CN104580456B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201410853956.6A CN104580456B (zh) 2014-12-31 2014-12-31 一种用于分布式系统的动态消息分发方法及系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201410853956.6A CN104580456B (zh) 2014-12-31 2014-12-31 一种用于分布式系统的动态消息分发方法及系统

Publications (2)

Publication Number Publication Date
CN104580456A true CN104580456A (zh) 2015-04-29
CN104580456B CN104580456B (zh) 2017-12-29

Family

ID=53095613

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201410853956.6A Expired - Fee Related CN104580456B (zh) 2014-12-31 2014-12-31 一种用于分布式系统的动态消息分发方法及系统

Country Status (1)

Country Link
CN (1) CN104580456B (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107615247A (zh) * 2015-06-24 2018-01-19 株式会社日立制作所 分布式系统

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20090171909A1 (en) * 2005-11-23 2009-07-02 Marcel Bank Computer-Implemented System for Producing, Processing and Managing Structured Data Sets
CN101534298A (zh) * 2009-03-23 2009-09-16 民航数据通信有限责任公司 航空器下传数据链电报的分发方法和装置
CN103024051A (zh) * 2012-12-17 2013-04-03 北京奇虎科技有限公司 一种进行服务器分发的装置、方法和相应系统
CN103064899A (zh) * 2012-12-17 2013-04-24 北京奇虎科技有限公司 一种分发信息数据库
CN103368777A (zh) * 2013-07-11 2013-10-23 曙光信息产业股份有限公司 一种数据包处理板及处理方法

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20090171909A1 (en) * 2005-11-23 2009-07-02 Marcel Bank Computer-Implemented System for Producing, Processing and Managing Structured Data Sets
CN101534298A (zh) * 2009-03-23 2009-09-16 民航数据通信有限责任公司 航空器下传数据链电报的分发方法和装置
CN103024051A (zh) * 2012-12-17 2013-04-03 北京奇虎科技有限公司 一种进行服务器分发的装置、方法和相应系统
CN103064899A (zh) * 2012-12-17 2013-04-24 北京奇虎科技有限公司 一种分发信息数据库
CN103368777A (zh) * 2013-07-11 2013-10-23 曙光信息产业股份有限公司 一种数据包处理板及处理方法

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107615247A (zh) * 2015-06-24 2018-01-19 株式会社日立制作所 分布式系统

Also Published As

Publication number Publication date
CN104580456B (zh) 2017-12-29

Similar Documents

Publication Publication Date Title
CN109996307B (zh) 一种数据路由方法以及终端
CN100471162C (zh) 一种发布及处理虚线路信息的方法和供应商边缘设备
CN110113264B (zh) 一种命名数据网络的缓存和路由实现方法
CN106921578B (zh) 一种转发表项的生成方法和装置
CN107547346B (zh) 一种报文传输方法和装置
EP4033731A1 (en) Service processing method, device, and system
JP2019536369A (ja) Nfコンポーネントの例外を処理するための方法およびシステム、ならびにデバイス
CN110138663B (zh) 一种以数据为中心的新一代网络实现方法
CN104301238A (zh) 一种报文处理方法、装置及系统
CN105721328B (zh) 一种vrrp负载均衡的方法、装置和路由器
CN104753789A (zh) 一种转发报文的方法及系统
CN104980368A (zh) 软件定义网络中的带宽保障方法及装置
US8819295B2 (en) Information communication system, first information processing device, method for processing information, and computer readable storage medium
EP2981036B1 (en) Multicast communication method and aggregation switch
US10374899B2 (en) Method and device for reporting OpenFLow switch capability
CN109743250B (zh) 组播报文的传输方法、第一网络设备和第二网络设备
CN104734930B (zh) Vlan接入vf网络的实现方法及装置、fcf
US9300529B2 (en) Communication system and network relay device
US10498637B2 (en) Switch processing method, controller, switch, and switch processing system
CN107872387B (zh) 发送vpn路由的方法和系统
CN104717640A (zh) 一种基于定位的无线网络通信的实现方法
CN104580456A (zh) 一种用于分布式系统的动态消息分发方法及系统
CN108632125B (zh) 一种组播表项管理方法、装置、设备及机器可读存储介质
US20220263794A1 (en) Method, apparatus, and system for generating forwarding information
CN114666279B (zh) 一种5g系统中pcc会话管理策略下发的方法及系统

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant
CP03 Change of name, title or address
CP03 Change of name, title or address

Address after: 518000 Nanshan Medical Instrument Industrial Park 1019, Nanhai Road, Nanshan District, Shenzhen, Guangdong, A211-A213

Patentee after: Shenzhen Hai Yun new energy Co.,Ltd.

Address before: 518052 Nanshan Medical Instrument Industrial Park 1019, Nanhai Road, Nanshan District, Shenzhen, Guangdong, A211-A213

Patentee before: SHENZHEN LANDING TECHNOLOGY Co.,Ltd.

CF01 Termination of patent right due to non-payment of annual fee
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20171229