CN102769668A - 基于近似匹配的发布/订阅负载均衡方法 - Google Patents

基于近似匹配的发布/订阅负载均衡方法 Download PDF

Info

Publication number
CN102769668A
CN102769668A CN2012102259859A CN201210225985A CN102769668A CN 102769668 A CN102769668 A CN 102769668A CN 2012102259859 A CN2012102259859 A CN 2012102259859A CN 201210225985 A CN201210225985 A CN 201210225985A CN 102769668 A CN102769668 A CN 102769668A
Authority
CN
China
Prior art keywords
node
load
incident
agent
subscription
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
CN2012102259859A
Other languages
English (en)
Other versions
CN102769668B (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.)
Shanghai Jiaotong University
Original Assignee
Shanghai Jiaotong University
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 Shanghai Jiaotong University filed Critical Shanghai Jiaotong University
Priority to CN201210225985.9A priority Critical patent/CN102769668B/zh
Publication of CN102769668A publication Critical patent/CN102769668A/zh
Application granted granted Critical
Publication of CN102769668B publication Critical patent/CN102769668B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Computer And Data Communications (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本发明涉及一种基于近似匹配的发布/订阅负载均衡方法,首先,用户将订阅要求发送到边界代理结点,边界代理结点将其转发给它所连接的中间代理结点;之后,某个边界代理结点收到事件后,先确定事件是否满足本地用户的订阅条件,如果满足,由该边界代理结点将事件传送到所有满足条件的本地用户,然后检查事件是否满足远程用户的订阅条件,如果满足,通过邻居代理结点进行转发。最后,在负载过重的中间代理结点上采用近似匹配的方法,实现可控的负载均衡,把匹配任务从负载过重的中间代理结点转移到负载较轻的边界代理结点上。本发明有效解决了现有发布/订阅系统存在的容易出现负载不均衡的技术问题,具有处理效率高、性能稳定的优点。

Description

基于近似匹配的发布/订阅负载均衡方法
技术领域
本发明涉及网络领域,尤其涉及一种基于近似匹配的分布式发布/订阅负载均衡方法。
背景技术
发布/订阅系统技术具有良好的应用前景。早期的基于主题的发布/订阅系统已有很多成熟的产品广泛应用于银行、证券、制造业企业信息化等各个领域,较有影响的应用案例包括NASDAQ证券交易系统、费城股票交易所业务系统等。面向大规模分布式计算的基于内容的发布/订阅系统,可以预见的应用场景包括:各类电子商务系统(网上拍卖系统、网上交易市场)、企业应用集成(EAI)、基于事件的供应链管理(ESCM)、电子新闻分发、在线网络游戏和大规模环境监测等。
目前,大部分发布/订阅系统主要采用精确匹配的方法,该方法可以最小化网络带宽的使用,但存在着明显的缺点:当系统的规模很大时,一些处于关键位置的代理结点会出现负载过重,而另外一些位于边界的代理结点负载过轻,出现负载不均衡现象。
发明内容
本发明的目的在于提供一种基于近似匹配的发布/订阅负载均衡方法,以解决现有技术中发布/订阅系统存在容易出现负载不均衡的技术问题。
为达到上述目的,本发明的目的在于提供一种基于近似匹配的发布/订阅负载均衡方法,包括以下步骤:
(1)用户将订阅要求发送到边界代理结点,边界代理结点将其转发给它所连接的中间代理结点;
(2)某个边界代理结点收到事件后,先确定事件是否满足本地用户的订阅条件,如果满足,由该边界代理结点将事件传送到所有满足条件的本地用户,然后检查事件是否满足远程用户的订阅条件,如果满足,通过邻居代理结点进行转发。
(3)在负载过重的中间代理结点上采用近似匹配的方法,实现可控的负载均衡,把匹配任务从负载过重的中间代理结点转移到负载较轻的边界代理结点上。
依照本发明较佳实施例所述的基于近似匹配的发布/订阅负载均衡方法,步骤三具体包括:
(31)根据每个中间代理结点的处理能力和当前结点接收到的事件个数判断各个结点是否处于负载过重状态;
(32)若某个或多个中间代理结点处于负载过重状态,则根据其邻居代理结点的负载能力和当前接收到的事件个数,计算出各邻居代理结点的空余处理能力;
(33)根据邻居代理结点的负载情况,调整负载过重的中间代理结点的近似匹配精度,采用快速的近似匹配方法,将精度匹配的任务传递给下一跳负载较轻的邻居代理节点。
依照本发明较佳实施例所述的基于近似匹配的发布/订阅负载均衡方法,步骤(31)中的结点处理能力为单位时间内结点能够处理的事件个数。
依照本发明较佳实施例所述的基于近似匹配的发布/订阅负载均衡方法,步骤(31)具体为:将结点单位时间内接收到的事件个数与结点的处理能力相比较,若单位时间内接收到的事件的个数大于结点的处理能力,则该结点处于负载过重状态。
本发明实时对系统中各中间代理结点的负载情况进行计算,当其接收到的事件个数大于其处理能力时,根据其邻居结点的负载能力和当前接收到的事件个数,计算出它们的空余处理能力,从而调整中间代理结点的近似匹配精度,加快中间代理结点的事件处理速度,让待处理事件快速通过中间代理结点,并将精度匹配的任务传递给下一跳负载较轻的结点,从而实现结点间的负载均衡,提高系统的整体性能。
综上所述,本发明能够实时计算系统中各中间代理结点的负载情况,计算出轻载结点的剩余工作能力,并利用可控的近似匹配方法,实现精确的负载均衡,提高整个系统的吞吐量和减少事件传送的延迟时间。因此,与现有技术相比,本发明有效解决了现有发布/订阅系统存在的容易出现负载不均衡的技术问题,具有处理效率高、性能稳定的优点。
附图说明
图1为本发明基于近似匹配的发布/订阅负载均衡方法的流程原理图;
图2为应用本发明基于近似匹配的发布/订阅负载均衡方法的网络系统结构示意图;
图3为本发明实施例的近似匹配索引结构图。
具体实施方式
以下结合附图,具体说明本发明。
请参阅图1,一种基于近似匹配的发布/订阅负载均衡方法,包括以下步骤:
S11:用户将订阅要求发送到边界代理结点,边界代理结点将其转发给它所连接的中间代理结点。
S12:某个边界代理结点收到事件后,先确定事件是否满足本地用户的订阅条件,如果满足,由该边界代理结点将事件传送到所有满足条件的本地用户,然后检查事件是否满足远程用户的订阅条件,如果满足,通过邻居代理结点进行转发。
S13:在负载过重的中间代理结点上采用近似匹配的方法,实现可控的负载均衡,把匹配任务从负载过重的中间代理结点转移到负载较轻的边界代理结点上。该步骤具体包括:
S131:根据每个中间代理结点的处理能力和当前结点接收到的事件个数判断各个结点是否处于负载过重状态.
一个结点的处理能力可表示为单位时间内结点能够处理的事件个数,将结点单位时间内接收到的事件个数与结点的处理能力相比较,若单位时间内接收到的事件的个数大于结点的处理能力,则该结点处于负载过重状态。
S132:若某个或多个中间代理结点处于负载过重状态,则根据其邻居代理结点的负载能力和当前接收到的事件个数,计算出各邻居代理结点的空余处理能力。
S133:根据邻居代理结点的负载情况,调整负载过重的中间代理结点的近似匹配精度,采用快速的近似匹配方法,将精度匹配的任务传递给下一跳负载较轻的邻居代理节点。
请再参阅图2,其为本发明基于近似匹配的发布/订阅负载均衡方法的网络系统结构示意图。以下结合图2对本发明的基于近似匹配的发布/订阅负载均衡方法进行详细说明。
如图2所示,应用本发明基于近似匹配的发布/订阅负载均衡方法的网络系统由用户(Client)、边界代理(Border Broker)和中间代理(Internal Broker)组成。用户将订阅要求发送到边界代理,边界代理将其转发给它所连接的中间代理。当边界代理收到事件后,先确定事件是否满足本地用户的订阅条件,如果满足,由该边界代理将事件传送到所有满足条件的用户。然后检查事件是否满足远程用户的订阅条件,如果满足,通过邻居代理进行转发。
例如,如图2所示,当B1收到一个事件后,首先判断是否满足与其直接相连的本地用户的订阅要求,如果满足,由B1进行转发。B1还接收到远程用户的订阅要求,如经由I1转发而来的订阅要求,所以B1还要判断事件是否与这些远程用户的订阅要求匹配,如果匹配B1要将事件转发给I1,再由I1进行下一步的转发。
当系统规模比较大时,处于中间位置的内部中间代理结点进行匹配操作的事件数量非常大,导致结点间负载不均衡,一些结点容易成为性能瓶颈。一个结点的处理能力可能表示为单位时间内能够处理的事件个数,当单位时间内接收到的事件个数大于其处理能力时,该结点就处于负载过重情况,有一些事件需要等待进行处理,结点容易成为整个系统的性能瓶颈。本系统提出了一种负载均衡机制,当某个中间代理结点或多个中间代理结点处于负载过重时,根据其邻居结点(即相邻的边界代理结点)的负载情况,采用快速的近似匹配方法,加快负载过重结点的事件处理能力,减轻其拥堵程度,从而提高系统的整体性能。
例如,如图2中处于枢纽位置的I1结点,当其接收到的事件个数大于其处理能力时,根据其邻居结点B1、B2、I2、I3的负载能力和当前接收到的事件个数,计算出它们的空余处理能力,从而调整I1的近似匹配精度,加快I1的事件处理速度,让待处理事件快速通过I1,并将精度匹配的任务传递给下一跳负载较轻的结点,从而实验结点间的负载均衡,提高系统的整体性能。
为了提高整体性能和减少事件传送的延迟时间,本发明在负载过重的中间代理结点上采用近似匹配的方法,实现可控的负载均衡,把匹配任务从负载过重的内部结点转移到负载较轻的边界结点上。近似匹配的索引结构如图3所示,每个用户的订阅条件可表示为一个区域(图3中的虚线矩形),可用最小包含它的一个近似区域来替代它(图3中的实线矩形),近似区域所包含的所有单元在其对应的位图(BitMap)中标志为1,表示这些单元已有用户订阅。事件对应图中的一个点,当接收到一个新的事件时,检查该事件所属的单元在位图中的标志位是否为1,如果已经标志了,则该事件满足用户的订阅条件,从而对其转发或传送。
本发明能够实时计算系统中各中间代理结点的负载情况,计算出轻载结点的剩余工作能力,并利用可控的近似匹配方法,实现精确的负载均衡,提高整个系统的吞吐量和减少事件传送的延迟时间。因此,与现有技术相比,本发明有效解决了现有发布/订阅系统存在的容易出现负载不均衡的技术问题,具有处理效率高、性能稳定的优点。
以上所述,仅是本发明的较佳实施实例而已,并非对本发明做任何形式上的限制,任何未脱离本发明技术方案的内容,依据本发明的技术实质对以上实施实例所作的任何简单修改、等同变化与修饰,均属于本发明技术方案的范围。

Claims (4)

1.一种基于近似匹配的发布/订阅负载均衡方法,其特征在于,包括以下步骤:
(1)用户将订阅要求发送到边界代理结点,边界代理结点将其转发给它所连接的中间代理结点;
(2)某个边界代理结点收到事件后,先确定事件是否满足本地用户的订阅条件,如果满足,由该边界代理结点将事件传送到所有满足条件的本地用户,然后检查事件是否满足远程用户的订阅条件,如果满足,通过邻居代理结点进行转发;
(3)在负载过重的中间代理结点上采用近似匹配的方法,实现可控的负载均衡,把匹配任务从负载过重的中间代理结点转移到负载较轻的边界代理结点上。
2.如权利要求1所述的基于近似匹配的发布/订阅负载均衡方法,其特征在于,步骤三具体包括:
(31)根据每个中间代理结点的处理能力和当前结点接收到的事件个数判断各个结点是否处于负载过重状态;
(32)若某个或多个中间代理结点处于负载过重状态,则根据其邻居代理结点的负载能力和当前接收到的事件个数,计算出各邻居代理结点的空余处理能力;
(33)根据邻居代理结点的负载情况,调整负载过重的中间代理结点的近似匹配精度,采用快速的近似匹配方法,将精度匹配的任务传递给下一跳负载较轻的邻居代理节点。
3.如权利要求2所述的基于近似匹配的发布/订阅负载均衡方法,其特征在于,步骤(31)中所述的结点处理能力为单位时间内结点能够处理的事件个数。
4.如权利要求3所述的基于近似匹配的发布/订阅负载均衡方法,其特征在于,步骤(31)具体为:将结点单位时间内接收到的事件个数与结点的处理能力相比较,若单位时间内接收到的事件的个数大于结点的处理能力,则该结点处于负载过重状态。
CN201210225985.9A 2012-07-02 2012-07-02 基于近似匹配的发布/订阅负载均衡方法 Expired - Fee Related CN102769668B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201210225985.9A CN102769668B (zh) 2012-07-02 2012-07-02 基于近似匹配的发布/订阅负载均衡方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201210225985.9A CN102769668B (zh) 2012-07-02 2012-07-02 基于近似匹配的发布/订阅负载均衡方法

Publications (2)

Publication Number Publication Date
CN102769668A true CN102769668A (zh) 2012-11-07
CN102769668B CN102769668B (zh) 2015-01-14

Family

ID=47096916

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201210225985.9A Expired - Fee Related CN102769668B (zh) 2012-07-02 2012-07-02 基于近似匹配的发布/订阅负载均衡方法

Country Status (1)

Country Link
CN (1) CN102769668B (zh)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103209213A (zh) * 2013-03-27 2013-07-17 北京京东尚科信息技术有限公司 用于数据订阅的数据传输方法和系统
CN103701938A (zh) * 2014-01-14 2014-04-02 百度在线网络技术(北京)有限公司 数据转发方法及装置
CN108197138A (zh) * 2017-11-21 2018-06-22 北京邮电大学 在发布/订阅系统中发布信息匹配订阅信息的方法及系统
CN109508433A (zh) * 2018-09-27 2019-03-22 上海交通大学 基于匹配算法性能调整的负载波动应对方法和系统
CN112328404A (zh) * 2020-11-26 2021-02-05 北京百度网讯科技有限公司 负载均衡方法及装置、电子设备、计算机可读介质

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107832393B (zh) * 2017-10-31 2022-02-11 上海交通大学 面向事件分发的订阅匹配度自适应匹配方法及系统

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1538516A (zh) * 2003-04-18 2004-10-20 南亚科技股份有限公司 防止深渠沟的顶部尺寸扩大的领型介电层制程
CN101854299A (zh) * 2010-05-21 2010-10-06 中国科学院软件研究所 一种发布/订阅系统的动态负载平衡方法
CN102355413A (zh) * 2011-08-26 2012-02-15 北京邮电大学 一种大规模实时统一消息空间的方法及其系统

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1538516A (zh) * 2003-04-18 2004-10-20 南亚科技股份有限公司 防止深渠沟的顶部尺寸扩大的领型介电层制程
CN101854299A (zh) * 2010-05-21 2010-10-06 中国科学院软件研究所 一种发布/订阅系统的动态负载平衡方法
CN102355413A (zh) * 2011-08-26 2012-02-15 北京邮电大学 一种大规模实时统一消息空间的方法及其系统

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
YAXIONG ZHAO , JIE WU: "Towards Approximate Event Processing in a Large-Scale Content-Based Network", 《IEEE 2011 31ST INTERNATIONAL CONFERENCE ON DISTRIBUTED COMPUTING SYSTEMS (ICDCS)》 *

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103209213A (zh) * 2013-03-27 2013-07-17 北京京东尚科信息技术有限公司 用于数据订阅的数据传输方法和系统
CN103209213B (zh) * 2013-03-27 2016-08-10 北京京东尚科信息技术有限公司 用于数据订阅的数据传输方法和系统
CN103701938A (zh) * 2014-01-14 2014-04-02 百度在线网络技术(北京)有限公司 数据转发方法及装置
CN103701938B (zh) * 2014-01-14 2016-08-31 百度在线网络技术(北京)有限公司 数据转发方法及装置
CN108197138A (zh) * 2017-11-21 2018-06-22 北京邮电大学 在发布/订阅系统中发布信息匹配订阅信息的方法及系统
CN109508433A (zh) * 2018-09-27 2019-03-22 上海交通大学 基于匹配算法性能调整的负载波动应对方法和系统
CN112328404A (zh) * 2020-11-26 2021-02-05 北京百度网讯科技有限公司 负载均衡方法及装置、电子设备、计算机可读介质
CN112328404B (zh) * 2020-11-26 2023-08-08 北京百度网讯科技有限公司 负载均衡方法及装置、电子设备、计算机可读介质

Also Published As

Publication number Publication date
CN102769668B (zh) 2015-01-14

Similar Documents

Publication Publication Date Title
CN102769668B (zh) 基于近似匹配的发布/订阅负载均衡方法
CN100556024C (zh) 用于网络场通信控制的方法和网络场
US20200092084A1 (en) System and methods for operating a blockchain network
CN101061469B (zh) 分布式请求选路
CA2897338C (en) Data stream splitting for low-latency data access
CN109218355A (zh) 负载均衡引擎,客户端,分布式计算系统以及负载均衡方法
CN107613030A (zh) 一种处理业务请求的方法和系统
CN103108008B (zh) 一种下载文件的方法及文件下载系统
CN102780768A (zh) 一种大并发量请求的处理方法及处理系统
CN111866085A (zh) 基于区块链的数据存储方法、系统和装置
CN111352705A (zh) 一种区块链的事务处理方法、装置、设备和介质
WO2012025052A1 (zh) 基于点对点网络的互联网搜索系统和方法
CN101719258A (zh) 基于大型机的远距离双中心交易信息的处理方法和系统
WO2014148247A1 (ja) 処理制御システム、処理制御方法、および処理制御プログラム
WO2023287819A1 (en) Reducing the environmental impact of distributed computing
Pasyeka et al. Development algorithmic model for optimization of distributed fault-tolerant web-systems
CN105009102B (zh) 用于多级聚合架构的系统和方法
JP5818263B2 (ja) データの分散管理システム及び装置及び方法及びプログラム
Kadhim et al. Hybrid load-balancing algorithm for distributed fog computing in internet of things environment
CN110009320B (zh) 资源转换方法、装置、系统、存储介质和计算机设备
CN103297542A (zh) 一种支持构件在线伸缩的云操作系统总线及均衡方法
US20200186461A1 (en) System and method for data transmission in distributed computing environments
CN102377826A (zh) 一种对等网络中冷门资源索引的优化放置方法
EP2765517B1 (en) Data stream splitting for low-latency data access
CN105162837A (zh) 海量数据存储环境下提升i/o吞吐率的方法及系统

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20150114