[发明专利]一种适用于移动场景的发布订阅系统的缓存方法有效
申请号: | 201410076745.6 | 申请日: | 2014-03-04 |
公开(公告)号: | CN103873465A | 公开(公告)日: | 2014-06-18 |
发明(设计)人: | 曹健;于润胜;徐钱元;许文星 | 申请(专利权)人: | 上海交通大学 |
主分类号: | H04L29/06 | 分类号: | H04L29/06;H04L29/08;H04W8/18 |
代理公司: | 上海汉声知识产权代理有限公司 31236 | 代理人: | 胡晶 |
地址: | 200240 *** | 国省代码: | 上海;31 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 适用于 移动 场景 发布 订阅 系统 缓存 方法 | ||
1.一种适用于移动场景的发布订阅系统的缓存方法,其特征在于,包括如下步骤:
缓存启动步骤:当订阅者从某一代理节点处断开连接之前,发送一断开消息,将订阅者的订阅条件和标示符通知边界代理;所述边界代理执行断开操作:
保留订阅表中的订阅条件所对应的表项,记录标示符,并为该订阅者设置一断开标记,标示订阅者处于断开状态;计算当前代理节点的加权平均距离Ci并记录最小值所述边界代理再将所述断开消息转发给所有邻居代理;
所有邻居代理重复上述断开操作,将所述断开消息通知到整个网络;之后,拥有最小值的代理节点被选为缓存点,并进行事件缓存;所述缓存点沿断开消息广播路径的逆方向发送反馈消息,通知该广播路径上的代理节点更新最小值缓存启动完成;
缓存终止步骤:当订阅者从某一代理节点重新连接网络时,发送一重连消息,边界代理执行重连操作:
将缓存启动时设置的断开标记置空,再将所述重连消息转发给所有邻居代理;
所有邻居代理重复上述重连操作,将所述重连消息通知到整个网络;缓存终止;
缓存订阅与响应步骤:订阅者从某一代理节点发出一缓存请求,所述缓存请求中包含缓存条件;当前代理节点进行缓存请求处理操作:
将所述缓存条件与当前代理节点中保留的订阅条件进行匹配,再将所述缓存请求转发给所有邻居代理;
所有邻居代理重复上述缓存请求处理操作,将所述缓存请求通知到整个网络;所述缓存点沿缓存请求广播路径的逆方向发送缓存的事件内容,完成缓存请求的响应。
2.根据权利要求1所述的缓存方法,其特征在于,所述加权平均距离Ci的计算方法如下:
假设si表示第i个订阅者,表示订阅者si可能出现的所有位置集合,且表示订阅者出现的第j个位置,其中j=1,2,……,n;当前代理节点根据公式(1)计算加权平均距离Ci:
其中,pij表示si在位置lij出现的概率,且dij表示当前代理节点到lij的距离;所述位置lij、概率pij以及距离dij预存在各代理节点中。
3.根据权利要求2所述的缓存方法,其特征在于,对于发布订阅网络中的每个代理节点,分别为每个订阅者si各维护一组特征数据{si→〈lij,pij,dij〉}。
4.根据权利要求3所述的缓存方法,其特征在于,在所述缓存终止步骤中,当订阅者发送所述重连消息时,将特征数据中的位置数据lij和概率数据pij加入所述重连消息中一并进行广播;在广播过程中,每个代理节点对存储的位置数据lij和概率数据pij进行更新。
5.根据权利要求1所述的缓存方法,其特征在于,缓存启动之后,后续发布的事件根据订阅表进行发布;在发布过程中,当前代理节点根据事件的订阅者对应的断开标记进行判断,若断开标记不为空,则比较本地加权平均距离Ci与最小值的大小关系决定是否对事件进行缓存。
6.根据权利要求1所述的缓存方法,其特征在于,在缓存订阅与响应步骤中,将缓存请求转发到缓存点获取缓存的方法具体为:
在缓存请求转发到缓存点的过程中依次记录沿途经过的代理节点,记为缓存请求广播路径;缓存请求到达缓存点后,缓存点将请求的缓存沿缓存请求广播路径的逆序发送给发出缓存请求的代理节点。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于上海交通大学,未经上海交通大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201410076745.6/1.html,转载请声明来源钻瓜专利网。