发明名称 数据更新的加锁方法和设备
摘要 本申请涉及一种多线程的数据更新的加锁方法和设备,其中,该方法可以包括:确定对InnoDB存储引擎中要更新的线程进行加锁的请求是否成功;如果所述加锁请求失败,则判断所述等待锁数是否超过预定阈值;如果所述等待锁数没有超过预定阈值,则创建针对所述失败线程的锁并等待加锁;如果所述等待锁数超过预定阈值,则将所述加锁失败线程调度出InnoDB存储引擎并将其哈希到各个桶中;将相同桶中的加锁失败线程以轮询的方式传送到InnoDB存储引擎以请求加锁。采用本申请,通过利用锁竞争的情况来识别并发更新的热点数据,从而对并发更新热点数据的线程进行调度控制,进而优化了高并发热点数据更新的处理能力。
申请公布号 CN104252386A 申请公布日期 2014.12.31
申请号 CN201310259869.3 申请日期 2013.06.26
申请人 阿里巴巴集团控股有限公司 发明人 刘辉
分类号 G06F9/48(2006.01)I;G06F17/30(2006.01)I 主分类号 G06F9/48(2006.01)I
代理机构 北京国昊天诚知识产权代理有限公司 11315 代理人 许志勇
主权项 一种多线程的数据更新的加锁方法,其特征在于,包括:确定对InnoDB存储引擎中要更新的线程进行加锁的请求是否成功;如果所述加锁请求失败,则判断所述等待锁数是否超过预定阈值;如果所述等待锁数没有超过预定阈值,则创建针对所述失败线程的锁并等待加锁;如果所述等待锁数超过预定阈值,则将所述加锁失败线程调度出InnoDB存储引擎并将其哈希到各个桶中;将相同桶中的加锁失败线程以轮询的方式传送到InnoDB存储引擎以请求加锁。
地址 英属开曼群岛大开曼资本大厦一座四层847号邮箱