[发明专利]基于zookeeper的事务实现方法及系统在审
申请号: | 202110099352.7 | 申请日: | 2021-01-25 |
公开(公告)号: | CN113051042A | 公开(公告)日: | 2021-06-29 |
发明(设计)人: | 鹿国照 | 申请(专利权)人: | 北京思特奇信息技术股份有限公司 |
主分类号: | G06F9/46 | 分类号: | G06F9/46;G06F16/21 |
代理公司: | 北京汇信合知识产权代理有限公司 11335 | 代理人: | 王维新 |
地址: | 100086 北京*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 基于 zookeeper 事务 实现 方法 系统 | ||
1.一种基于zookeeper的事务实现方法,其特征在于,包括:
对zookeeper进行封装形成支持事务的zookeeperWrapper操作类,所述操作类提供事务操作函数和节点操作封装函数;
利用所述事务操作函数的beginTransaction函数启动事务;
在事务处理过程中,利用所述节点操作封装函数按照缓存的zookeeper操作列表对目录节点进行操作;
利用所述事务操作函数的commit函数将所述zookeeper操作列表中的所有操作作为入参提交至zookeeper;
在事务处理过程中函数操作异常时,利用所述事务操作函数的回滚函数对所述zookeeper操作列表中的所有操作进行回滚操作。
2.根据权利要求1所述的基于zookeeper的事务实现方法,其特征在于,所述利用所述节点操作封装函数按照缓冲的zookeeper操作列表对目录节点进行操作具体包括:
利用节点操作封装函数中的createNode函数、setData函数和/或deleteNode函数分别对目录节点进行添加、修改和/或删除操作。
3.根据权利要求2所述的基于zookeeper的事务实现方法,其特征在于,利用所述setData函数进行节点修改过程中:
对所述zookeeper操作列表中最新加入的数据进行搜索,判断操作类型参数的记录值;
若所述操作类型参数存在,判断记录值类型为DELETE或CREATE,若记录值类型为DELETE则调用CREATE执行创建节点操作,若记录值类型为CREATE则调用SET_DATA执行数据操作;
若所述操作类型参数不存在,调用zookeeper的exists方法校验判断是否存在节点,若存在则调用SET_DATA执行数据操作,若不存在则调用CREATE执行创建节点操作。
4.根据权利要求2所述的基于zookeeper的事务实现方法,其特征在于,利用所述deleteNode函数进行节点删除过程中:
调用addCuratorOp函数在所述zookeeper操作列表中增加操作类型为DELETE的操作。
5.根据权利要求4所述的基于zookeeper的事务实现方法,其特征在于,所述addCuratorOp函数对于操作路径相同、最近的操作连续出现的两次相同的CREATE或DELETE操作直接忽略不进行重复操作。
6.一种基于zookeeper的事务实现系统,应用如权利要求1至5中任一项所述的基于zookeeper的事务实现方法,其特征在于,包括:
操作类封装模块,用于对zookeeper进行封装形成支持事务的zookeeperWrapper操作类,所述操作类提供事务操作函数和节点操作封装函数;
事务启动模块,用于利用所述事务操作函数的beginTransaction函数启动事务;
节点操作模块,用于在事务处理过程中,利用所述节点操作封装函数按照缓存的zookeeper操作列表对目录节点进行操作;
事务提交模块,用于利用所述事务操作函数的commit函数将所述zookeeper操作列表中的所有操作作为入参提交至zookeeper;
操作回滚模块,用于在事务处理过程中函数操作异常时,利用所述事务操作函数的回滚函数对所述zookeeper操作列表中的所有操作进行回滚操作。
7.根据权利要求6所述的基于zookeeper的事务实现系统,其特征在于,所述节点操作模块具体用于:
利用节点操作封装函数中的createNode函数、setData函数和/或deleteNode函数分别对目录节点进行添加、修改和/或删除操作。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京思特奇信息技术股份有限公司,未经北京思特奇信息技术股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202110099352.7/1.html,转载请声明来源钻瓜专利网。
- 上一篇:一种用于灌溉的污水杂物和油污分离装置及方法
- 下一篇:工程设计展示系统