[发明专利]一种基于空间漫游位置的视频网络地图多级缓存的实现方法无效
申请号: | 201010260489.8 | 申请日: | 2010-08-19 |
公开(公告)号: | CN101917481A | 公开(公告)日: | 2010-12-15 |
发明(设计)人: | 周寅 | 申请(专利权)人: | 周寅 |
主分类号: | H04L29/08 | 分类号: | H04L29/08;H04L29/06 |
代理公司: | 宁波市天晟知识产权代理有限公司 33219 | 代理人: | 张文忠 |
地址: | 315016 浙江省宁波*** | 国省代码: | 浙江;33 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 空间 漫游 位置 视频 网络 地图 多级 缓存 实现 方法 | ||
1.一种基于空间漫游位置的视频网络地图多级缓存的实现方法,包括客户端算法和服务端算法,其特征是:所述的客户端算法包括以下操作步骤;
步骤1:设置图缓存C1存储图的结构信息,其中包括图中的点和边的信息以及每一点以及每一条边的最新更新时间和版本号;设置视频缓存C2存储图中的与边关联的视频以及每一视频的最新更新时间和版本号;初始化缓存中的每一个对象的最新更新时间为当前时间;初始化缓存中的每一个对象的版本号为零;
步骤2:在每次用户漫游开始时,设置定时器周期性地根据当前漫游位置向服务发出缓存内容更新请求;漫游历史标志为上一个时间周期用户所在的漫游位置;初始化该标志为零;设置时钟周期T1;
步骤3:设置定时器周期性遍历所有缓存对象,如果缓存对象的上次更新时间距离当下时间早了一个月以上,清除该对象,释放被不必要占用的缓存空间;设置时钟周期T2>>T1;
步骤4:收到服务器发来的缓存内容更新消息后,解包更新缓存;
步骤5:如果收到的包为图信息包,解包,将消息中包含的图的点和边更新到缓存C1中去;在更新时比对点与边的上次更新时间与包的请求初始时间戳;如果包的请求初始时间戳小于上次更新时间,则放弃对该点或者边的信息更新;否则,比较版本号,如果缓存版本号>=更新内容的版本号,则放弃对该点或者边的信息更新;否则执行更新操作;
步骤6:如果收到的包为视频信息包,解包,将消息中包含的图的视频更新到视频缓存C2中去;在更新时比对视频的上次更新时间与包的请求初始时间戳;如果包的请求初始时间戳小于上次更新时间,则放弃对该视频的信息更新;否则,比较版本号,如果缓存版本号>=更新内容的版本号,则放弃对该点或者边的信息更新;否则执行更新操作。
2.根据权利要求1所述的一种基于空间漫游位置的视频网络地图多级缓存的实现方法,其特征是:所述的服务端算法包括以下操作步骤:
步骤1:在服务器端也设置两个缓存,图缓存SC1和视频缓存SC2;视频缓存中设置一个队列结构,队列前端保持最先进入缓存的视频内容的内存地址,其后保持所有视频内容的内存地址;设置SC2的缓存容量限度;
步骤2:如果接收到图更新请求消息M1,解包,将请求消息中的每一个点和每一条边的版本号与服务器上的每个点和边版本号进行比较,如果该对象的版本号大于请求版本号,则从缓存SC1中检测该对象,如果该对象在缓存中存在,将该对象缓存中取出,打入服务器回复消息,即图信息包;如果该对象不在缓存中,则从服务器上的数据库中取出,存入缓存,打入服务器回复消息,即图信息包;根据M1中的矩形参数,将覆盖矩形范围以内的点和边也从SC1缓存或者数据库中取出,打入图信息包;打包完毕,将图信息包发送回客户端;
步骤3:如果接收到视频更新请求消息M2,解包,将请求消息中的每条边所对应视频的版本号与服务器上的相应视频的版本号进行比较,如果该对象的版本号大于请求版本号,则从缓存SC2中检测该对象,如果该对象在缓存中存在,将该对象缓存中取出,打入服务器回复消息,即视频包;如果该对象不在缓存中,则从服务器上的数据库中取出,存入缓存,打入服务器回复消息,即视频包;其中,如果视频缓存达到了容量限度,则从SC2队列顶部取出视频指针,从缓存中清楚该指针所指的视频以及该指针;根据M2中的矩形参数,将覆盖矩形范围以内的视频也从SC2缓存或者数据库中取出,打入视频包;打包完毕,将视频包发送回客户端。
3.根据权利要求1或2所述的一种基于空间漫游位置的视频网络地图多级缓存的实现方法,其特征是:所述的客户端的步骤2至少包括如下步骤;
步骤21:在每次用户漫游开始时,设置定时器周期性地根据当前漫游位置向服务发出缓存内容更新请求;漫游历史标志为上一个时间周期用户所在的漫游位置;初始化该标志为零;启动定时器;
步骤22:在每个时钟周期,以当前漫游者在地图中的坐标为中心,画出两个边长分别为L1和L2的正方形S1和S2,L1<L2;
步骤23:根据漫游历史标志判断是否是当前漫游的首个时钟周期;
步骤24:如果是漫游的首个时钟周期,遍历S1覆盖区域内的图中所有的点和边,将所有这些点和边的信息、版本号以及覆盖正方形S1的参数即中心位置和边打包,并且在包上打上发送时间戳,将消息包M1发向服务器,要求获得S1覆盖区域内的图的所有更新信息,包括覆盖的点和边;同时,遍历S2覆盖区域内的图中与所有的边相关联的视频,将它们的版本号以及覆盖正方形S2的参数即中心位置和边打包,并且在包上打上发送时间戳,将消息包M2发向服务器,要求获得S2覆盖区域内与图的边关联的更新视频;
步骤25:如果不是漫游的首个时钟周期,图缓存更新区域被分解为R11和R12;遍历R11和R12覆盖区域内的图中所有的点和边,将所有这些点和边的信息、版本号以及覆盖长方形R11和R12的参数即中心位置和边打包,并且在包上打上发送时间戳,将消息包M1发向服务器,要求获得R11和R12覆盖区域内的图的所有更新信息、包括覆盖的点和边;同时,视频缓存更新区域被分解为R21和R22;遍历R21和R22覆盖区域内的图中与所有的边相关联的视频,将它们的版本号以及覆盖长方形R21和R22的参数即中心位置和边打包,并且在包上打上发送时间戳,将消息包M2发向服务器,要求获得R21和R22覆盖区域内与图的边关联的更新视频;
步骤26:用户漫游结束是终止定时器。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于周寅,未经周寅许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201010260489.8/1.html,转载请声明来源钻瓜专利网。