[发明专利]分布式集群的并发处理方法及装置在审
申请号: | 202010592622.3 | 申请日: | 2020-06-24 |
公开(公告)号: | CN111737020A | 公开(公告)日: | 2020-10-02 |
发明(设计)人: | 张崇铭 | 申请(专利权)人: | 广联达科技股份有限公司 |
主分类号: | G06F9/52 | 分类号: | G06F9/52;G06F9/46 |
代理公司: | 北京英特普罗知识产权代理有限公司 11015 | 代理人: | 程超 |
地址: | 100000 北京市海淀区西*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 分布式 集群 并发 处理 方法 装置 | ||
1.一种分布式集群系统的并发处理方法,其特征在于,包括:
获得业务访问请求,构造与所述业务访问请求相对应的并发锁;
获取所述并发锁的锁信息,所述锁信息用于表征与所述业务访问请求相对应的业务资源是否被占用;
根据所述锁信息确定是否允许所述业务访问请求;
在允许所述业务访问请求的情况下,修改所述并发锁的锁信息。
2.根据权利要求1所述的并发处理方法,其特征在于,所述响应于业务访问请求,构造与所述业务访问请求相对应的并发锁的步骤包括:
基于所述业务访问请求中的接口参数,通过FreeMarker基于@Synchronized注解的方式构造与所述业务访问请求相对应的并发锁。
3.根据权利要求1或2所述的并发处理方法,其特征在于,所述获取所述并发锁的锁信息的步骤包括:
从redis数据库中获取所述并发锁的占用信息和超时信息;所述占用信息表征要访问的当前业务是否已被其它并发锁占用,所述超时信息表征所述其它并发锁占用所述当前业务的时间是否已经超过预设阈值。
4.根据权利要求3所述的并发处理方法,其特征在于,所述锁信息包括占用信息和超时信息,所述根据所述锁信息确定是否允许所述业务访问请求的步骤包括:
若所述占用信息表征要访问的当前业务未被其它并发锁占用,则允许所述业务访问请求;
若所述占用信息表征要访问的当前业务已被其它并发锁占用,判断所述超时信息是否已经超出所述预设阈值;
若否,拒绝所述业务访问请求;若是,允许所述业务访问请求。
5.根据权利要求4所述的并发处理方法,其特征在于,所述修改所述并发锁的锁信息的步骤包括:
将所述当前业务的占用信息修改为已被占用;
根据所述预设阈值修改所述超时信息。
6.根据权利要求5所述的并发处理方法,其特征在于,所述修改所述并发锁的锁信息的步骤还包括:
当所述当前业务的访问结束时,将所述当前业务的占用信息修改为未被占用;以及
当在所述当前业务的访问过程中出现异常时,将所述当前业务的占用信息修改为未被占用。
7.根据权利要求1所述的并发处理方法,其特征在于,所述方法还包括:
通过setnx()函数获取所述并发锁的锁信息,确定与所述业务访问请求相对应的业务资源是否已经被占用;
响应于与所述业务访问请求相对应的业务资源已经被占用,通过getset()函数获取第一超时信息;
响应于所述第一超时信息早于当前时间,允许通过当前并发锁占用与所述业务访问请求相对应的业务资源;
计算与所述当前并发锁对应的重置超时信息;
通过getset()函数获取第二超时信息,比较所述第二超时信息与所述重置超时信息是否相等;如相等,确定允许所述业务访问请求。
8.一种分布式集群系统的并发处理装置,其特征在于,包括:
并发锁构造模块,适用于获得业务访问请求,构造与所述业务访问请求相对应的并发锁;
锁信息获取模块,适用于获取所述并发锁的锁信息,所述锁信息用于表征与所述业务访问请求相对应的业务资源是否被占用;
访问请求确定模块,适用于根据所述锁信息确定是否允许所述业务访问请求;
锁信息修改模块,适用于在允许所述业务访问请求的情况下,修改所述并发锁的锁信息。
9.一种计算机设备,包括存储器、处理器以及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至7任一项所述方法的步骤。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至7任一项所述方法的步骤。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于广联达科技股份有限公司,未经广联达科技股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202010592622.3/1.html,转载请声明来源钻瓜专利网。
- 上一篇:跟车控制方法、装置、车辆及存储介质
- 下一篇:一种车用尿素的生产系统