(19)国家知识产权局
(12)发明 专利申请
(10)申请公布号
(43)申请公布日
(21)申请 号 202210482718.3
(22)申请日 2022.05.05
(71)申请人 北京理工大 学
地址 100081 北京市海淀区中关村南大街5
号
(72)发明人 潘鹤翔 李耀明 陈刚 黄铭钧
张美慧
(74)专利代理 机构 北京云嘉 湃富知识产权代理
有限公司 1 1678
专利代理师 程凌军
(51)Int.Cl.
G06F 16/23(2019.01)
G06F 16/2458(2019.01)
G06F 16/27(2019.01)
(54)发明名称
一种自适应分布式事务 提交方法
(57)摘要
本公开涉及一种自适应分布式事务提交方
法, 属于分布式事务提交技术领域。 通过将分布
式事务的提交协议分成三类, 并根据每个事务确
定使用的提交协议, 使系统可以根据环境状况调
整协议, 避免基于系统环境的固定假设采用固定
提交协议带来的系统因阻塞不可用或系统事务
处理效率低等问题; 针对系统的无 故障等级和崩
溃故障等级环 境进行优化, 在 声明阶段通过立刻
执行临时回滚决定, 避免验证阶段 发送决定的网
络开销, 提高处理效率; 且在声明阶段参与者决
定不一致时, 在验证阶段仅向临时决定提交的参
与者发送回滚决定, 降低网络开销; 且在所有的
参与者在 声明阶段都做出临时提交决定时, 记录
日志, 通过日志确保崩溃者能够正确恢复, 以保
持节点间的一 致性。
权利要求书2页 说明书13页 附图5页
CN 114722062 A
2022.07.08
CN 114722062 A
1.一种自适应分布式事务 提交方法, 其特 征在于: 包括以下内容:
协调者C*收到事务T后, 确定事务提交协议ΠT, 其中ΠT为无故障等级协议PRACFF、 崩溃
故障等级协议PRACCF或网络故障等级协议PRACNF, 若ΠT为PRACNF, 则对T执行ΠT后退出; 否
则, 对T通过 下述过程执 行ΠT:
包括声明阶段和验证阶段:
在声明阶段, C*将T和ΠT发给T的所有参与者CT, CT中的各参与者执行ΠT并向C*反馈ΠT
的执行结果RT; 如果一个参与者临时决定回滚, 则该决定将会被立刻 在此参与者上 执行;
在验证阶段, 首 先, C*根据RT以及ΠT推断出未返回消息的参与者所作的临时决定:
(1)若ΠT为PRACFF, 设置未返回消息的参与者和已返回消息的参与者做出了不一致的
决定;
(2)若ΠT为PRACCF, 若已返回消息的所有参与者做出了一致的决定, 则设置未返回消息
的参与者 也作出了同样的决定;
然后, C*利用CT中各个参与者的决定, 做出T的最终决定, 包括以下三种情况:
(1)CT中所有的参与者都临时决定了回滚, 则C*通知T的来源此事务已回滚, 并停止关于
T的执行;
(2)CT中所有的参与者都临时决定了提交, 则C*做出提交的决定, 在本地用日志记录下
这一决定, 通知T的来源此事务已提交; C*将此决定发给CT中的每个 参与者; 其中日志用于帮
助崩溃的参与者 正确恢复;
参与者在收到提交决定后进行本地 提交, 并反馈一个ACK消息给C*;
C*收到所有ACK后, 释放日志;
(3)CT中的参与者做出了不同的决定, 则C*做出回滚的决定, 通知临时决定提交的参与
者回滚T;
临时决定提交的参与者收到回滚的消息后回滚T, 并反馈ACK消息给C*;
C*收到所有ACK后, 通知T的来源此事务已回滚。
2.根据权利要求1所述的方法, 其特 征在于:
所述PRACFF为: 如果所述参与者对所述T投反对票v, 则将v广播到所有所述CT中的其他
参与者, 并临时决定回滚所述T; 否则, 如果所述CT中的参与者数目多于1, 则等待最大消息
延迟的上限时间U后, 如果收到了所述CT中其他参与者对所述T的反对票, 则临时决定回滚
所述T, 否则, 临时决定提交所述T。
3.根据权利要求1所述的方法, 其特 征在于:
所述PRACCF为: 所述参与者将对所述T的投票v广 播到所有所述CT中的其他参与者, 如果
v为反对票, 则临时决定回滚所述T; 否则, 如果所述CT中的参与者数目多于1, 则在所述U时
间内, 如果从所有所述CT的参与者收到对所述T的赞成票, 则临时决定提交所述T; 否则临时
决定回滚所述T。
4.根据权利要求1所述的方法, 其特 征在于: 所述PRACNF为: 三阶段提交协议3PC 。
5.根据权利要求1 ‑4任一所述的方法, 其特征在于: 所述ΠT根据所述CT的系统环境确
定。
6.根据权利要求5所述的方法, 其特征在于: 所述ΠT根据所述CT中最差的系统环境等级
L确定, 即当所述CT中最差的系统环境为无故障等级时, 所述ΠT采用所述PRACFF; 当所述CT中权 利 要 求 书 1/2 页
2
CN 114722062 A
2最差的系统环境为崩溃故障等级时, 所述ΠT采用所述PRACCF; 当所述CT中最差的系统环境
为网络故障等级时, 所述ΠT采用所述PRACNF。
7.根据权利要求6所述的方法, 其特征在于: 所述参与者的系统环境通过鲁棒等级状态
机RLSM维护。
8.根据权利要求7 所述的方法, 其特 征在于:
所述RLSM包含三个状态, 分别代表分布式事务提交的三个故障等级: 无故障等级、 崩溃
故障等级和网络故障等级;
所述RLSM根据输入的不同在三个 状态间转移;
所述RLSM的初始状态为无故障等级;
所述输入为CF、 NF、 FF( αCF)或FF( αNF), CF表示崩溃故障, NF表示网络故障, FF( αCF)表示
从崩溃故障等级的鲁 棒性降低转移, 即, 处于崩溃故障等级的所述RLSM, 在连续αCF次无故障
执行后, 会将状态下降到无故障等级; FF( αNF)表示从网络故障等级的鲁棒性降低转移, 即,
处于网络故障等级的所述RLSM, 在连续αNF次无故障执 行后, 会将状态下降到无故障等级;
所述RLSM根据输入的不同在三个 状态间转移过程 为:
当所述RLSM处于无故障等级时, 若收到输入CF, 则进行鲁棒性提高转移至崩溃故障等
级, 若收到 输入NF, 则进行鲁棒 性提高转移至网络故障等级;
当所述RLSM处于崩溃故障等级时, 若收到输入NF, 则进行鲁棒性提高转移至网络故障
等级; 若收到 输入FF( αCF), 则进行鲁棒 性降低转移至无故障等级;
当所述RLSM处于网络故障等级时, 若收到输入FF( αNF), 则进行鲁棒性降低转移至无故
障等级。
9.根据权利要求8所述的方法, 其特征在于: 所述输入根据所述ΠT及所述RT通过如下原
则确定:
若所述ΠT为无故障等级协议, 检查所述RT中的结果是否能断定恶性网络故障的存在,
若存在则输入NF, 调整所述L为 网络故障等级; 否则检查所述RT中自身所代表的所述参与者
是否存在恶性崩溃故障, 若存在则输入CF, 调整所述 L为崩溃故障等级;
若所述ΠT为崩溃故障等级协议, 检查所述RT中的结果是否能断定恶性网络故障的存
在, 若存在则输入NF, 调整 所述L为网络故障等级; 否则检查连续无故障执行的数目, 如果该
数目达到了所述αCF则输入FF( αCF);
若所述ΠT为网络故 障等级协议, 检查连续无故 障执行的数目, 如果该数 目达到了所述
αNF则输入FF( αNF)。
10.根据权利要 求9所述的方法, 其特征在于: 所述αNF=1, 所述αCF基于所述L通过强化学
习获得。权 利 要 求 书 2/2 页
3
CN 114722062 A
3
专利 一种自适应分布式事务提交方法
安全报告 >
其他 >
文档预览
中文文档
21 页
50 下载
1000 浏览
0 评论
309 收藏
3.0分
温馨提示:本文档共21页,可预览 3 页,如浏览全部内容或当前文档出现乱码,可开通会员下载原始文档
本文档由 思考人生 于 2024-02-24 08:49:50上传分享