• 最美逆行!高速隧道突发火灾  交警三次逆行穿火线撤离400多名群众 2019-07-17
  • 《陕西省县域经济社会发展监测考评办法》解读 2019-07-17
  • 一切都是老板炒工人的鱿鱼 2019-07-14
  • 赏花不用跑远 宗角禄康开得正艳 2019-07-14
  • 车俊会见毛里求斯代总统 2019-07-14
  • 除了杨崇勇,“2亿元贪官俱乐部”至少还有这些人 2019-07-09
  • [民生热线]咸安西大街烤鸭店每天油烟扰民 区政府:已责令整改 2019-07-09
  • 海淀:得天独厚的自然条件 2019-07-09
  • 进京通行证限次数!70.9万辆本地化使用外埠号牌车或将受影响 2019-07-06
  • 6月14日凤凰直通车:茅台再开市场化招聘大门,32个部门要285人葡萄 种植 2019-07-05
  • 东京湾产业转型启示录 2019-07-05
  • 中国三星获第十二届人民企业社会责任奖年度扶贫奖 2019-06-30
  • 一个语文基础都没有的人就喜欢指手画脚, 2019-06-30
  • 匹夫有责之一百一十二—道义大义的博客—强国博客—人民网 2019-06-25
  • 原来端午节也可以过得很“文艺” 2019-06-10
    • / 17
    • 下载费用:20 金币  

    广西11选5分布走势图: 一种基于磁盘缓存的消息队列的实现方法及装置.pdf

    摘要
    申请专利号:

    CN201510547996.2

    申请日:

    2015.08.31

    公开号:

    CN105138410A

    公开日:

    2015.12.09

    当前法律状态:

    实审

    有效性:

    审中

    法律详情: 实质审查的生效IPC(主分类):G06F 9/54申请日:20150831|||公开
    IPC分类号: G06F9/54; G06F3/06 主分类号: G06F9/54
    申请人: 北京锐安科技有限公司
    发明人: 贾高峰; 田晋坤; 虞平; 万月亮; 火一莽; 曹晓飞
    地址: 100044北京市海淀区西小口路66号中关村东升科技园北领地B-2号楼七层
    优先权:
    专利代理机构: 北京品源专利代理有限公司11332 代理人: 胡彬; 孟金喆
    PDF完整版下载: PDF下载
    法律状态
    申请(专利)号:

    CN201510547996.2

    授权公告号:

    |||

    法律状态公告日:

    2016.01.06|||2015.12.09

    法律状态类型:

    实质审查的生效|||公开

    摘要

    本发明公开了一种基于磁盘缓存的消息队列的实现方法及装置。所述方法包括创建监控线程以按照预设的周期值周期性的监控消息队列中的消息量;在所述消息量达到预设的消息上限值时,将再接收到的消息转换为二进制序列串,将所述二进制序列串顺序写入预先确定的磁盘文件,记录所述磁盘文件的写入的消息量和写入消息的偏移位置;在所述消息量达到预设的消息下限值时,从所述预先确定的磁盘文件中顺序读取消息,将所述消息写入所述消息队列,记录读取的消息量和读取消息的偏移位置。本发明解决分布式系统中多个主机之间快速传递消息时的完整性问题,达到了在保障消息传递速度的同时保障消息完整性的效果。

    权利要求书

    权利要求书
    1.  一种基于磁盘缓存的消息队列的实现方法,其特征在于,包括:
    创建监控线程以按照预设的周期值周期性的监控消息队列中的消息量;
    在所述消息量达到预设的消息上限值时,将再接收到的消息转换为二进制序列串,将所述二进制序列串顺序写入预先确定的磁盘文件,记录所述磁盘文件的写入的消息量和写入消息的偏移位置;
    在所述消息量达到预设的消息下限值时,从所述预先确定的磁盘文件中顺序读取消息,将所述消息写入所述消息队列,记录读取的消息量和读取消息的偏移位置。

    2.  根据权利要求1所述的方法,其特征在于,在将所述二进制序列串顺序写入预先确定的磁盘文件之前,还包括:
    获取预先设置的写磁盘文件索引,其中,所述写磁盘文件索引包括当前写磁盘文件名、当前写入的消息量和当前写入消息的位置对应的写指针;
    根据所述写磁盘文件索引打开写磁盘文件;
    若所述写磁盘文件中已写入的消息量达到预设的最大消息量,则关闭所述写磁盘文件,创建并打开一个磁盘文件作为新的写磁盘文件,更新所述写磁盘文件索引。

    3.  根据权利要求1所述的方法,其特征在于,在所述消息量达到预设的消息下限值时,从所述预先确定的磁盘文件中顺序读取消息之前,还包括:
    所述监控线程查询预先确定的磁盘文件以确定所述磁盘文件中是否存在未读取的缓存消息;
    若所述磁盘文件中不存在未读取的缓存消息,则使所述监控线程睡眠预设的时间。

    4.  根据权利要求3所述的方法,其特征在于,所述监控线程查询预先确定的磁盘文件以确定所述磁盘文件中是否存在未读取的缓存消息之前,还包括:
    在读磁盘文件索引以及待读取的磁盘文件均存在时,根据所述读磁盘文件索引确定待读取的磁盘文件,其中,所述读磁盘文件索引包括当前待读取的磁盘文件名,当前读取消息的位置对应的读指针以及当前读取的消息量;
    在读磁盘文件索引不存在且待读取的磁盘文件存在时,按照消息写入磁盘文件的顺序从剩余的磁盘文件中确定消息写入在先的磁盘文件,将消息写入在先的磁盘文件作为待读取的磁盘文件,初始化所述磁盘文件的当前读取消息的位置对应的读指针为零,当前读取的消息量为零;
    在待读取的磁盘文件不存在时,使所述监控线程睡眠预设的时间。

    5.  根据权利要求3所述的方法,其特征在于,所述监控线程查询预先确定的磁盘文件以确定所述磁盘文件中是否存在未读取的缓存消息,包括:
    判断待读取的磁盘文件的文件名与根据写磁盘文件索引确定的写磁盘文件的文件名是否匹配;
    若所述待读取的磁盘文件的文件名与所述写磁盘文件的文件名匹配,则比较当前读取的消息量与所述写磁盘文件的当前写入的消息量;
    在当前读取的消息量小于所述写磁盘文件的当前写入的消息量时,确定所述磁盘文件中存在未读取的缓存消息;
    在当前读取的消息量大于或等于所述写磁盘文件的当前写入的消息量时,确定所述磁盘文件中不存在未读取的缓存消息,使所述监控线程睡眠预设的时间;
    若所述待读取的磁盘文件的文件名与所述写磁盘文件的文件名不匹配,则 判断所述待读取的磁盘文件内的消息量是否达到预设的最大消息量;
    在所述待读取的磁盘文件内的消息量达到所述最大消息量时,关闭并删除所述待读取的磁盘文件,按照消息写入磁盘文件的顺序从剩余的磁盘文件中确定消息写入在先的磁盘文件,将消息写入在先的磁盘文件作为待读取的磁盘文件,初始化所述磁盘文件的当前读取消息的位置对应的读指针为零,当前读取的消息量为零;
    在所述待读取的磁盘文件内的消息量未达到所述最大消息量时,确定所述待读取的磁盘文件中存在未读取的缓存消息。

    6.  一种基于磁盘缓存的消息队列的实现装置,其特征在于,包括:
    消息监控单元,用于创建监控线程以按照预设的周期值周期性的监控消息队列中的消息量;
    磁盘写入单元,用于在所述消息量达到预设的消息上限值时,将再接收到的消息转换为二进制序列串,将所述二进制序列串顺序写入预先确定的磁盘文件,记录所述磁盘文件的写入的消息量和写入消息的偏移位置;
    消息写入单元,用于在所述消息量达到预设的消息下限值时,从所述预先确定的磁盘文件中顺序读取消息,将所述消息写入所述消息队列,记录读取的消息量和读取消息的偏移位置。

    7.  根据权利要求6所述的装置,其特征在于,所述装置还包括:
    写磁盘文件索引获取单元,用于在将所述二进制序列串顺序写入预先确定的磁盘文件之前,获取预先设置的写磁盘文件索引,其中,所述写磁盘文件索引包括当前写磁盘文件名、当前写入的消息量和当前写入消息的位置对应的写指针;
    磁盘文件打开单元,用于根据所述写磁盘文件索引打开写磁盘文件;
    磁盘文件创建单元,用于若所述写磁盘文件中已写入的消息量达到预设的最大消息量,则关闭所述写磁盘文件,创建并打开一个磁盘文件作为新的写磁盘文件,更新所述写磁盘文件索引。

    8.  根据权利要求6所述的装置,其特征在于,所述装置还包括:
    缓存消息查询单元,用于在所述消息量达到预设的消息下限值时,从所述预先确定的磁盘文件中顺序读取消息之前,所述监控线程查询预先确定的磁盘文件以确定所述磁盘文件中是否存在未读取的缓存消息;
    若所述磁盘文件中不存在未读取的缓存消息,则使所述监控线程睡眠预设的时间。

    9.  根据权利要求8所述的装置,其特征在于,所述装置还包括:
    待读取的磁盘文件确定单元,用于所述监控线程查询预先确定的磁盘文件以确定所述磁盘文件中是否存在未读取的缓存消息之前,在读磁盘文件索引以及待读取的磁盘文件均存在时,根据所述读磁盘文件索引确定待读取的磁盘文件,其中,所述读磁盘文件索引包括当前待读取的磁盘文件名,当前读取消息的位置对应的读指针以及当前读取的消息量;
    在读磁盘文件索引不存在且待读取的磁盘文件存在时,按照消息写入磁盘文件的顺序从剩余的磁盘文件中确定消息写入在先的磁盘文件,将消息写入在先的磁盘文件作为待读取的磁盘文件,初始化所述磁盘文件的当前读取消息的位置对应的读指针为零,当前读取的消息量为零;
    在待读取的磁盘文件不存在时,使所述监控线程睡眠预设的时间。

    10.  根据权利要求8所述的装置,其特征在于,所述缓存消息查询单元具 体用于:
    判断待读取的磁盘文件的文件名与根据写磁盘文件索引确定的写磁盘文件的文件名是否匹配;
    若所述待读取的磁盘文件的文件名与所述写磁盘文件的文件名匹配,则比较当前读取的消息量与所述写磁盘文件的当前写入的消息量;
    在当前读取的消息量小于所述写磁盘文件的当前写入的消息量时,确定所述磁盘文件中存在未读取的缓存消息;
    在当前读取的消息量大于或等于所述写磁盘文件的当前写入的消息量时,确定所述磁盘文件中不存在未读取的缓存消息,使所述监控线程睡眠预设的时间;
    若所述待读取的磁盘文件的文件名与所述写磁盘文件的文件名不匹配,则判断所述待读取的磁盘文件内的消息量是否达到预设的最大消息量;
    在所述待读取的磁盘文件内的消息量达到所述最大消息量时,关闭并删除所述待读取的磁盘文件,按照消息写入磁盘文件的顺序从剩余的磁盘文件中确定消息写入在先的磁盘文件,将消息写入在先的磁盘文件作为待读取的磁盘文件,初始化所述磁盘文件的当前读取消息的位置对应的读指针为零,当前读取的消息量为零;
    在所述待读取的磁盘文件内的消息量未达到所述最大消息量时,确定所述待读取的磁盘文件中存在未读取的缓存消息。

    关 键 词:
    一种 基于 磁盘 缓存 消息 队列 实现 方法 装置
      专利查询网所有资源均是用户自行上传分享,仅供网友学习交流,未经上传用户书面授权,请勿作他用。
    0条评论

    还可以输入200字符

    暂无评论,赶快抢占沙发吧。

    关于本文
    本文标题:一种基于磁盘缓存的消息队列的实现方法及装置.pdf
    链接地址://www.fnjpv.tw/p-6408081.html
    关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服客服 - 联系我们

    [email protected] 2017-2018 www.fnjpv.tw网站版权所有
    经营许可证编号:粤ICP备17046363号-1 
     


    收起
    展开
  • 最美逆行!高速隧道突发火灾  交警三次逆行穿火线撤离400多名群众 2019-07-17
  • 《陕西省县域经济社会发展监测考评办法》解读 2019-07-17
  • 一切都是老板炒工人的鱿鱼 2019-07-14
  • 赏花不用跑远 宗角禄康开得正艳 2019-07-14
  • 车俊会见毛里求斯代总统 2019-07-14
  • 除了杨崇勇,“2亿元贪官俱乐部”至少还有这些人 2019-07-09
  • [民生热线]咸安西大街烤鸭店每天油烟扰民 区政府:已责令整改 2019-07-09
  • 海淀:得天独厚的自然条件 2019-07-09
  • 进京通行证限次数!70.9万辆本地化使用外埠号牌车或将受影响 2019-07-06
  • 6月14日凤凰直通车:茅台再开市场化招聘大门,32个部门要285人葡萄 种植 2019-07-05
  • 东京湾产业转型启示录 2019-07-05
  • 中国三星获第十二届人民企业社会责任奖年度扶贫奖 2019-06-30
  • 一个语文基础都没有的人就喜欢指手画脚, 2019-06-30
  • 匹夫有责之一百一十二—道义大义的博客—强国博客—人民网 2019-06-25
  • 原来端午节也可以过得很“文艺” 2019-06-10
  • 赌场德州扑克返水 今天河南快3开奖结果 曾道人免费资料大全正版2018 埃及电子 欢乐捕鱼人破解版 伦敦奥运网球冠军 重庆时时彩开奖记录 幸运飞艇开奖app下载 神鬼奇航彩金 北京赛车开奖直播