[发明专利]共享资源访问方法和装置有效

专利信息
申请号: 201611116940.2 申请日: 2016-12-07
公开(公告)号: CN106776052B 公开(公告)日: 2019-12-10
发明(设计)人: 涂克东 申请(专利权)人: 金蝶软件(中国)有限公司
主分类号: G06F9/52 分类号: G06F9/52
代理公司: 44224 广州华进联合专利商标代理有限公司 代理人: 谢曲曲
地址: 518000 广东省深圳市南山区*** 国省代码: 广东;44
权利要求书: 查看更多 说明书: 查看更多
摘要:
搜索关键词: 共享资源 访问 方法 装置
【说明书】:

发明涉及一种共享资源访问方法和装置,所述方法包括:获取业务处理请求,开始业务处理;当所述业务处理使用共享资源时,创建独立的内部事务调用所述共享资源;执行所述内部事务,并在所述内部事务完成时释放共享资源的资源锁;执行与所述内部事务对应的外部事务,所述外部事务使用所述内部事务的处理结果。该方法使得共享资源可以及时被使用,减少锁等待,从而减少系统资源的占用。

技术领域

本发明涉及计算机技术领域,特别是涉及一种共享资源访问方法和装置。

背景技术

在软件系统中,通常有些共享资源,例如:单据编码的最大号获取、获取当前预算额度、获取当前账户余额等。这些共享资源有一个特性,必须排队执行,上一次调用完成,下一次调用必须依赖上一次调用完成的结果进行处理,以保证数据的及时和正确性。如果把这些共享资源放在一个事务环境中,一次共享资源调用消耗的时间就取决于这个事务完成所需的时间,如果占用共享资源的事务耗时很长,就会造成大量锁等待,因此会占用大量的系统资源,甚至引起服务器宕机。

传统技术中,一般是通过减少占用共享资源的事务的耗时,来减少锁等待。然而,事务本身是比较难优化的,其本身就是需要一定的时间才能处理完成。因此,传统技术不能有效减少锁等待,减少系统资源的占用。

发明内容

基于此,有必要针对上述技术问题,提供了一种能减少锁等待,从而减少系统资源占用的共享资源访问方法和装置。

一种共享资源访问方法,所述方法包括:

获取业务处理请求,开始业务处理;

当所述业务处理使用共享资源时,创建独立的内部事务调用所述共享资源;

执行所述内部事务,并在所述内部事务完成时释放共享资源的资源锁;

执行与所述内部事务对应的外部事务,所述外部事务使用所述内部事务的处理结果。

在其中一个实施例中,所述方法还包括:

若所述外部事务执行过程正常,则进行提交操作,修改数据库对应的日志状态为提交;若所述外部事务执行过程出现异常,则进行回滚操作,修改数据库对应的日志状态为回滚。

在其中一个实施例中,所述进行提交操作,包括:

调用在外部事务中注册的提交事件,在所述提交时间中提交外部事务的处理结果。

在其中一个实施例中,所述进行回滚操作,包括:

调用在外部事务中注册的回滚事件,在所述回滚事件中释放所述内部事务的处理结果,将所述内部事务的处理结果返回到所述数据库中。

在其中一个实施例中,所述方法还包括:

当执行与所述内部事务对应的外部事务时,修改数据库对应的日志状态为进行中;定时检测数据库日志状态,若所述数据库日志状态为进行中的时间超过预设的时间阈值,则对外部事务的处理结果进行补偿。

一种共享资源访问装置,所述装置包括:

请求获取模块,用于获取业务处理请求,开始业务处理;

事务创建模块,用于当所述业务处理使用共享资源时,创建独立的内部事务调用所述共享资源;

第一事务执行模块,用于执行所述内部事务,并在所述内部事务完成时释放共享资源的资源锁;

第二事务执行模块,用于执行与所述内部事务对应的外部事务,所述外部事务使用所述内部事务的处理结果。

在其中一个实施例中,所述装置还包括:

提交模块,用于若所述外部事务执行过程正常,则进行提交操作;

下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。

该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于金蝶软件(中国)有限公司,未经金蝶软件(中国)有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服

本文链接:http://www.vipzhuanli.com/pat/books/201611116940.2/2.html,转载请声明来源钻瓜专利网。

×

专利文献下载

说明:

1、专利原文基于中国国家知识产权局专利说明书;

2、支持发明专利 、实用新型专利、外观设计专利(升级中);

3、专利数据每周两次同步更新,支持Adobe PDF格式;

4、内容包括专利技术的结构示意图流程工艺图技术构造图

5、已全新升级为极速版,下载速度显著提升!欢迎使用!

请您登陆后,进行下载,点击【登陆】 【注册】

关于我们 寻求报道 投稿须知 广告合作 版权声明 网站地图 友情链接 企业标识 联系我们

钻瓜专利网在线咨询

周一至周五 9:00-18:00

咨询在线客服咨询在线客服
tel code back_top