【技术实现步骤摘要】
一种资源死锁的检测方法和装置
[0001]本申请涉及计算机
,尤其涉及一种资源死锁的检测方法和装置。
技术介绍
[0002]在系统运行过程中,如果两个进程在执行时,按照相反的顺序访问数据库中的两个资源,比如,进程1按照“资源1
→
资源2”的顺序访问数据库,但进程2按照“资源2
→
资源1”的顺序访问数据库,就有可能出现如下情况:进程1锁住了资源1,进程2锁住了资源2,但进程1等待资源2,而进程2等待资源1。这种情况可以称为死锁。死锁的出现可能导致系统运行出现风险。
[0003]因此,希望提供一种技术,能够尽早识别出资源死锁,以降低对系统运行带来的影响。
技术实现思路
[0004]本申请提供了一种资源死锁的检测方法和装置,以期尽早识别出资源死锁,进而可以降低对系统运行带来的影响。
[0005]第一方面,本申请提供了一种资源死锁的检测方法,该方法包括:获取第一进程对数据库中多个资源的访问顺序和第二进程对数据库中多个资源的访问顺序,第一进程和第二进程为同一系统中的两个进程;基于第一进程对数据库中多个资源的访问顺序,确定第一资源对集合,第一资源对集合包括由第一进程访问的多个资源两两组合得到的至少一个资源对,每个资源对包括按照第一进程的访问顺序排布的两个资源;基于第二进程对数据库中多个资源的访问顺序,确定第二资源对集合,第二资源对集合包括由第二进程访问的多个资源两两组合得到的至少一个资源对,每个资源对包括按照第二进程的访问顺序排布的两个资源;确定第一资源对 ...
【技术保护点】
【技术特征摘要】
1.一种资源死锁的检测方法,其特征在于,包括:获取第一进程对数据库中多个资源的访问顺序和第二进程对所述数据库中多个资源的访问顺序,所述第一进程和所述第二进程为同一系统中的两个进程;基于所述第一进程对所述数据库中多个资源的访问顺序,确定第一资源对集合,所述第一资源对集合包括由所述第一进程访问的多个资源两两组合得到的至少一个资源对,每个资源对包括按照所述第一进程的访问顺序排布的两个资源;基于所述第二进程对所述数据库中多个资源的访问顺序,确定第二资源对集合,所述第二资源对集合包括由所述第二进程访问的多个资源两两组合得到的至少一个资源对,每个资源对包括按照所述第二进程的访问顺序排布的两个资源;确定所述第一资源对集合中的资源对是否与所述第二资源对集合中的资源对存在资源死锁,其中,存在资源死锁的两个资源对包括相同的两个资源,但访问顺序相反。2.如权利要求1所述的方法,所述获取第一进程对数据库中多个资源的访问顺序和第二进程对所述数据库中多个资源的访问顺序,包括:获取所述第一进程的代码和所述第二进程的代码;基于所述第一进程的代码,获取所述第一进程对所述数据库中多个资源的访问顺序;基于所述第二进程的代码,获取所述第二进程对所述数据库中多个资源的访问顺序。3.如权利要求2所述的方法,所述基于所述第一进程的代码,获取所述第一进程对所述数据库中多个资源的访问顺序,包括:基于所述第一进程的代码确定所述第一进程的访问链,所述第一进程的访问链是按照所述第一进程对所述数据库中多个资源的访问顺序连接而成的链路,用于指示所述第一进程访问所述数据库中多个资源的先后顺序;以及所述基于所述第二进程的代码,获取所述第二进程对所述数据库中多个资源的访问顺序,包括:基于所述第二进程的代码确定所述第二进程的访问链,所述第二进程的访问链是按照所述第二进程对所述数据库中多个资源的访问顺序连接而成的链路,用于指示所述第二进程访问所述数据库中多个资源的先后顺序。4.如权利要求3所述的方法,所述第一进程的访问链包括多个第一资源;所述方法还包括:对所述第一进程的访问链中的多个第一资源进行去重处理,以得到去重后的访问链,所述去重后的访问链中的资源互不相同,且所述第一资源在所述去重后的访问链中的位置根据所述第一资源在去重前的访问链中首次出现的位置确定。5.如权利要求4所述的方法,所述资源对为按照访问链的顺序,从在先访问的一个资源指向在后访问的一个资源的向量,所述第一资源对集合为包括多个向量的第一向量集合,所述第二资源对集合为包括多个向量的第二向量集合,以及所述确定所述第一资源对集合中的资源对是否与所述第二资源对集合中的资源对存在资源死锁,包括:基于预定义的乘法运算的规则、所述第一向量集合中的多个向量和所述第二向量集合中的多个向量,得到多个运算结果,每个运算结果由所述第一向量集合中的一个向量和所述第二向量集合中的一个向量执行乘法运算得到;
基于所述多个运算结果和预定义的目标值,确定所述第一资源对集合中的资源对是否与所述第二资源对集合中的资源对存在资源死锁。6.如权利要求1至5中任一项所述的方法,所述方法还包括:在所述第一资源对集合中的资源对与所述第二资源对集合中的资源对存在资源死锁的情况下,输出检测结果,所述检测结果包括所述第一进程的标识和所述第二进程的标识。7.一种资源死锁的检测装置,其特征在于,包括:获取模块,用于获取第一进程对数据库中多个资源的访问顺序和...
【专利技术属性】
技术研发人员:张浩,潘丹铃,朱武平,邹宁,
申请(专利权)人:中国工商银行股份有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。