体育游戏app平台2PC(Two-Phase Commit-开云「中国」Kaiyun·官方网站-登录入口

发布日期:2024-07-03 11:04    点击次数:72

Hello,小伙伴们!今天咱们来聊聊散布式系统中一个特殊垂死的话题——散布式一致性。关于一个散布式系统来说体育游戏app平台,保证各个节点的数据一致性是一件特殊有挑战性的事情。在这方面,XA(eXtended Architecture)公约提供了一套可靠的惩处有筹办。而其中,2PC(Two-Phase Commit,两阶段提交)和3PC(Three-Phase Commit,三阶段提交)是两种经典的散布式一致性公约。今天咱们就来真切筹议一下这两种公约过火愚弄场景。

2PC公约:两阶段提交公约

2PC公约是散布式系统中最基础的提交公约之一。顾名想义,2PC公约分为两个阶段:准备阶段(Prepare)和提交阶段(Commit)。咱们先来看一下每个阶段的看守内容。

准备阶段(Prepare)

在准备阶段,互助者会向通盘参与者发送霸术苦求,霸术他们是否不错运转准备提交。这个进程主要包括以下几步:

互助者(Coordinator)发送Prepare苦求:互助者向通盘参与者(Participants)发送Prepare苦求,霸术是否不错准备提交事务。参与者写Undo、Redo日记:每个参与者在吸收到Prepare苦求后,会进行相应的准备职责,写入Undo日记(纪录在出现故障时如何回滚)和Redo日记(纪录在提交时如何重作念)。参与者反馈:参与者在完成准备职责后,向互助者发送反馈,默示是否不错进行提交。

提交阶段(Commit)

在提交阶段,互助者会凭据通盘参与者的反馈决定是提交还是回滚事务。具体进程如下:

通盘参与者反馈Yes:要是通盘参与者齐反馈Yes,互助者则发送Commit苦求,条款参与者推论提交操作,具体是凭据Redo日记进行提交。有参与者反馈No或超时:要是有任何一个参与者反馈No或者超时未反馈,互助者则发送Rollback苦求,条款通盘参与者回滚事务,具体是凭据Undo日记进行回滚。

通盘进程不错简要塞回想为:霸术通盘参与者是否不错提交(准备阶段),然后凭据参与者的反馈决定是否提交或回滚(提交阶段)。

3PC公约:三阶段提交公约

3PC公约是在2PC公约的基础上增多了一个阶段,以擢升系统的容错性和可用性。3PC公约将提交阶段细分为CanCommit、PreCommit和DoCommit三个阶段。咱们来看一下每个阶段的看守内容。

CanCommit阶段

在CanCommit阶段,互助者会发送canCommit苦求,并运转恭候参与者的反馈。具体进程如下:

互助者发送canCommit苦求:互助者向通盘参与者发送canCommit苦求,霸术是否不错运转事务提交。参与者反馈:参与者吸收到苦求后,判断我方是否简略提交,并将为止反馈给互助者。要是通盘参与者齐反馈Yes,则参加下一阶段。

PreCommit阶段

在PreCommit阶段,互助者会发送PreCommit苦求,条款参与者准备提交事务。具体进程如下:

通盘参与者反馈Yes:要是通盘参与者在CanCommit阶段齐反馈Yes,互助者会发送PreCommit苦求,条款参与者写入Undo、Redo日记,准备提交事务。参与者写日记并反馈:参与者吸收到PreCommit苦求后,会写入Undo日记和Redo日记,并向互助者反馈准备就绪。要是有任何参与者反馈No或者超时,互助者会中断事务。

DoCommit阶段

在DoCommit阶段,互助者会凭据参与者的反馈决定是否最终提交事务。具体进程如下:

通盘参与者反馈Yes:要是通盘参与者在PreCommit阶段齐反馈准备就绪,互助者会发送DoCommit苦求,条款参与者推论提交操作,凭据Redo日记进行提交。有参与者反馈No或超时:要是有任何参与者反馈No或者超时,互助者会发送Rollback苦求,条款通盘参与者回滚事务,凭据Undo日记进行回滚。

通过增多PreCommit阶段,3PC公约在参与者中引入了超时机制,这么即使在互助者失效的情况下,参与者也能在超时后自行中断事务,开释资源,擢升了系统的容错智商。

2PC和3PC之间的诀别

为了更明晰地了解2PC和3PC公约之间的诀别,咱们将其回想如下表:

回想

2PC和3PC公约是散布式系统中常用的散布式一致性公约。2PC公约简短径直,但在互助者失效时存在资源锁死的问题。而3PC公约通过增多阶段和引入超时机制,擢升了系统的容错智商和资源开释为止。

在本体愚弄中,聘请哪种公约要凭据具体的业务需乞降系统特色来定。要是系统对一致性条款特殊高,而且不错继承较高的延长,不错聘请3PC公约。要是系统更顾惜性能且不错容忍短时候内的一致性问题,则不错聘请2PC公约。

END

但愿今天的共享对人人意会散布式一致性公约有所匡助。要是有任何问题或目标,宽容不才方留言量度哦!咱们下次相遇,拜拜!

本文作家:小米,一个喜欢时刻共享的29岁体式员。要是你喜欢我的著作,宽容顾惜我的微信公众号“软件求生”,取得更多时刻干货!

#深度好文策动#体育游戏app平台