【技术实现步骤摘要】
本专利技术涉及分布式发布订阅系统(Distributed Publish/Subscribe System)和社区构建,划分和聚集(Community Construction and Division)
,尤其涉及面向社区的发布订阅系统重聚集方法及系统。
技术介绍
在分布式发布订阅系统中,客户端(Cl ient)连接到中间的路由节点(Router ),并通过发送消息与接收其他客户端的消息与之发生关联。消息由路由节点路由和转发。客户端在连接到中间的路由节点时,通常是随机选择路由节点连接或者按某种启发式的方式连接。这样的连接方式,通常没有考虑客户端之间的关系或者只考虑静态的注册信息,使得一些有频繁消息关联的客户端所连接的路由节点之间相距较远(路由节点之间的路径较长),导致系统中大量的消息经过多次路由和转发才能到达目的客户端处,中间路由节点的负载 较大,并增加了系统内的消息量,降低了系统效率;而考虑与其他客户端动态关系的部署方式,会节省消息经过的路由节点个数,进而减少系统内部产生的消息量和消息通讯的时延,并在一定程度上缓解路由节点间负载不均的情况,提升系统性能 ...
【技术保护点】
【技术特征摘要】
1.一种面向社区的发布订阅系统重聚集方法,其特征在于,包括步骤1,分析客户端网络的消息关联关系,构建客户端通信关系网络;步骤2,应用社区划分方法对客户端通信关系网络进行划分,得到客户端网络中的社区结构;步骤3,对每个社区结构,选取合适的路由节点作为其聚集中心,并将属于这个社区的客户端网络聚集到所述聚集中心,使属于同一社区的客户端网络部署到地理位置较近的路由节点,让占消息总量比例较大的社区内的消息能较快的完成传递,提升订阅系统性能;聚集中心,定义为所述社区在聚集时聚集代价最小的路由节点。2.如权利要求I所述的面向社区的发布订阅系统重聚集方法,其特征在于,步骤I还包括步骤21,客户端节点的关系网络用有向图G= {V, E, W}来表示,其中V是顶点集,表示所有的客户端节点;E是有向边集,表明存在着消息关联的客户端节点,W表示边集的权重,为单位时间内两个客户端节点之间的消息量,表明两个客户端节点之间的消息通信的强度; 步骤22,两个顶点之间存在一条边表示这两个客户端节点之间存在着消息通信,边的方向表明从消息从发送者到接收者,为单位时间内两个客户端节点之间的消息量;步骤23,通过监控段连入分布式发布订阅系统的一个路由节点上,来收集分布式发布订阅系统中的所有消息日志,然后通过消息日志获得客户端节点之间的消息关联关系,构建客户端节点通信关系网络有向图G。3.如权利要求I所述的面向社区的发布订阅系统重聚集方法,其特征在于,步骤2还包括步骤31,客户端节点通过关联程度聚集,社区内部关联强度大于社区之间的关联强度。 步骤32,根据社区划分方法,利用一个反映社区内部边的比例,与在连接概率相同时, 随机网络的边的比例的差值,这个差值被定义为模度化,值越大表明社区结构越明显;步骤33,通过社区划分方法层次的合并或者拆分来计算使模度化取得峰值时的社区分割结果,得客户端通信关系网络后,用社区划分方法分割网络,得到客户端通信关系网络里面的社区结构。4.如权利要求I所述的面向社区的发布订阅系统重聚集方法,其特征在于,步骤3还包括步骤41,定义聚集中心带来的订阅系统开销,然后建立包含全部集群的队列,依次处理每个集群,将位于这个集群内的所有社区根据其客户端节点的比例排序,优先将客户端节点比例较大的社区部署到当前的集群上;步骤42,如果某个社区之前被部署了,则比较这个社区在当前集群和之前被部署的集群上的客户端节点比例,如果当前集群上的客户端节点比例更大,则这个社区被重部署到当前集群;步骤43,通过迭代过程对聚集中心开销进行折中平衡。5.如权利要求4所述的面向社区的发布订阅系统重聚集方法,其特征在于,步骤41中订阅系统开销还包括步骤51,订阅系统中消息经过的路由节点的条数的平均值来定义订阅系统的性能,6.如权利要求4所述的面向社区的发布订阅系统重聚集方法,其特征在于,步骤43还包括步骤61,对客户端节点的客户端通信关系网络进行社区划分;步骤62,以最小的迁移代价,将社区重聚集到聚集中心,达到社区的物理聚集;步骤63,依据订阅系统的性能定义和重聚集代价定义,计算订阅系统性能的改变和重聚集的代价;步骤64,用社区划分方法对每个社区再次进行社区划分;步骤65,重复步骤62和步骤63 ;如果步骤64的社区划分带来的系统性能的变化比例大于重聚集的代价的变化比例,则迭代停止,否则重复步骤64-65。7.一种面向社区的发布订阅系统重聚集系统,其特征在于,包括构建网络模...
【专利技术属性】
技术研发人员:李伟,虎嵩林,
申请(专利权)人:中国科学院计算技术研究所,
类型:发明
国别省市: