数据一致性解决方案.pdfVIP

  1. 1、本文档共21页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
数据⼀致性解决⽅案 姜宁 willem.jiang@ 关于我 让云原⽣开发更简单 Github :/ServiceComb 官⽹:https://www.servicecomb.io ⼤纲 • 数据⼀致性的起因 • 数据⼀致解决⽅案 • Saga简介 • ServiceComb Saga 实现演示 单体应⽤ • 单体应⽤由于所有模块(A/B/C)使⽤同⼀个数据库,数据⼀致性通 过数据库transaction保证 flight hotel car rental booking reservation commit rollback 微服务场景 • 每个微服务的数据库为私有,⽽且数据库选型也可能不同,导致 数据⼀致性⽆法通过数据库保证 flight booking car rental hotel reservation 解决⽅案 • 两阶段提交(2PC) • 事件驱动 (Event Driven) • Try/Confirm/Cancel (TCC) • Saga 两阶段提交(2PC) A A A propose vote commit/abort propose vote commit/abort Coordinator B Coordinator B Coordinator B propose vote commit/abort C C C 两阶段提交(2PC) • 优点: • 数据⼀致性好 • 缺点: • 阻塞式,锁定资源 2 O(n ) • 复杂度⾼,难以扩展 • 如果commit阶段coordinator挂了,事务将处于悬⽽未决状态 事件驱动⽅式 • 建⽴消息队列基础上,保证消息不丢不重。 • 通过消息将本地事务串接起来。 A B C A B C 事件驱动 • 优点: • 服务⾃组织,去中⼼化 • 缺点: • 服务互相耦合,新增服务导致服务间事件流转变化 • 服务越多,服务间事件流转越难可视化,难以定位问题 需要修改 A B A B

文档评论(0)

zhaoxiaoj + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档