发明名称 一种多任务的可控自动快照方法
摘要 本发明提供一种多任务的可控自动快照方法,体系结构包括:任务触发器、任务接受器、多线程模型和自动快照模块四大部分组成,使用任务接受器接受WEB或者远程代理触发的任务新建、开启或者停止一个自动快照任务;通过多线程模型为每个任务分配一个线程来实现多个任务同时进行;通过动态扩展线城池实现可执行任务的动态扩展;自动快照模块实现按照固定的时间间隔来进行快照操作;提供快照查询模块对外提供根据时间点的快照信息查询,为远程通过快照进行恢复提供基础;为适应新的文件系统提供的2<sup>64</sup>快照能力,解决传统手动快照或者定时快照保护粒度较小的问题,从而为数据提供更为安全的保护。同时通过多线程模型创建存储池动态分配工作线程到每个任务,从而实现多任务同时操作。
申请公布号 CN101667147A 申请公布日期 2010.03.10
申请号 CN200910017347.6 申请日期 2009.07.27
申请人 浪潮电子信息产业股份有限公司 发明人 戴文军
分类号 G06F11/14(2006.01)I;G06F9/46(2006.01)I;G06F17/30(2006.01)I 主分类号 G06F11/14(2006.01)I
代理机构 代理人
主权项 1、一种多任务的可控自动快照方法,其特征在于,体系结构包括:任务触发器、任务接受器、多线程模型和自动快照模块四大部分组成,使用任务接受器接受WEB或者远程代理触发的任务新建、开启或者停止一个自动快照任务;通过多线程模型为每个任务分配一个线程来实现多个任务同时进行;通过动态扩展线城池实现可执行任务的动态扩展;自动快照模块实现按照固定的时间间隔来进行快照操作;提供快照查询模块对外提供根据时间点的快照信息查询,为远程通过快照进行恢复提供基础;具体步骤如下:A、任务接受器启动监听进程,接受从WEB或者远程代理传输来的快照任务,任务类型有新建、开启、停止一个任务和快照资源查询,为了统一WEB、远程Agent任务触发器与自动快照系统间的统一接口,系统采取以下策略:A0、WEB、远程Agent和自动快照系统采用Socket进行通讯,避免直接的代码调用,从而实现系统的松耦合;新增加的任务触发端只需建立相应的Socket客户端实现与系统的通讯;A1、WEB、远程Agent与自动快照系统间的通讯内容采用JSON形式,采用JSON格式简化自动快照系统的任务的解析和WEB或者远程Agent对返回结果解析的难度;同时采用固定的JSON格式,对外屏蔽实现细节,增强系统的安全性和降低任务触发端实现的难度;B、任务接受器在接受到一个命令时,调用JSON解析模块解析任务,根据任务类型进行相应操作,任务类型有四种,分别是:B0、新建一个任务:主线程获取新建任务的相关参数,并实例化一个自动快照对象,然后查看现有工作线程池内是否有空闲线程,如果为真,直接分配一个空闲线程给自动快照实例,启动线程,执行自动快照任务;为假,则创建新的线程集,并把线程集加入到线程池中,从线程池中分配空闲线程给自动快照实例;启动线程执行自动快照任务;B1、开启一个任务:主线程通过解析获取相关启动参数,查找原有任务停止时的执行状态,并确立自动快照的新执行点,从线程池中分配空闲线程执行自动快照任务,线程池为空,则需按照A0所示,首先创建新的线程集;B2、停止一个任务:主线程通过解析获取相关停止参数,并查询任务线程号,主线程给工作线程发送一个停止命令,工作线程停止操作,主线程将线程重新置为空闲,并存放到线程池中等待下一次调用;B3、查询快照信息:根据时间点查询相关快照信息,主线程查询点附近一定时间范围内的快照信息,并通过封装,形成JSON格式,返回给任务触发端;C、自动快照模块执行自动快照操作还包括以下操作:自动快照按照固定的时间间隔对存储池进行快照;自动快照模块将快照信息插入到数据库中,以便客户端进行更为快捷的查询操作。
地址 250014山东省济南市历下区山大路224号