《Saga分布式事务解决⽅案与实践》演讲者/姜宁53/p1_1.jpg) QCon 全球软件开发大会 INTERNATIONAL SOFTWARE DEVELOPMENT CONFERENCE BEIJING 2018 # 《Saga分布式事务解决方案与实践》 演讲者 / 姜宁 ## 关于我 • 华为开源能力中心 • ServiceComb项目负责人 • Apache Member, IPMC, 多个Apache项目 uments/2/4/1/5/241599442e508e58cf8505991b74dc53/p2_1.jpg) ## 议题 - 微服务事务一致性问题? • 业界Saga的解决方案 • ServiceComb Saga的演进 • 后续的开发计划 ## 微服务架构 - 微服务架构将一个应用分成多个相互独立的服务。 - 好处是各个服务能够持续独立的开发和部署。 - 难题是服务的数据需要采用什么样的方式来进行存储? [Image](/uploads/documents/2/4/1/5/241599442e508e58cf8505991b74dc53/p11_2.jpg) ## Saga简介 - 1987年Hector & Kenneth 发表论文 Sagas SAGAS • Saga = Long Live Transaction (LLT) • LLT = T1 + T2 + T3 + ... + Tn - 每个本地事务Tx0 码力 | 39 页 | 2.78 MB | 2 年前3
《Saga分布式事务解决⽅案与实践》演讲者/姜宁 # 《Saga分布式事务解决方案与实践》 演讲者 / 姜宁 ## 关于我 • 华为开源能力中心 • ServiceComb项目负责人 • Apache Member, IPMC, 多个Apache项目 • RedHat, IONA uments/2/1/9/5/21954dd3fc87fbdb89d08f0e9bd8b79f/p2_2.jpg) ## 议题 • 微服务事务一致性问题? • 业界Saga的解决方案 • ServiceComb Saga的演进 • 后续的开发计划 ## 微服务架构 - 微服务架构将一个应用分成多个相互独立的服务。 - 好处是各个服务能够持续独立的开发和部署。 - 难题是服务的数据需要采用什么样的方式来进行存储? [Image](/uploads/documents/2/1/9/5/21954dd3fc87fbdb89d08f0e9bd8b79f/p11_2.jpg) ## Saga简介 • 1987年Hector & Kenneth 发表论文 Sagas • Saga = Long Live Transaction (LLT) • LLT = T1 + T2 + T3 + ... + Tn - 每个本地事务Tx0 码力 | 33 页 | 2.38 MB | 2 年前3
ServiceComb 介绍ServiceComb-Saga • 长时间运行事务处理框架 ## ServiceComb组件的新特性 • Service-Center 0.2.0 • 提供了管理控制台,对注册的服务实例提供管理功能 - Java-Chassis 0.3.0 - 支持通过@Span注释的方式定义事务 - 统一了Http请求处理,支持对Rest调用进行定制处理 • Saga 0.1.0 • 提供了初步的Saga调用服务,支持顺序以及并发的调用处理0 码力 | 16 页 | 1.26 MB | 2 年前3
ServiceComb 微服务框架(POJO/SpringM VC/JAX-RS) 熔断/容错 处理链 限流 负载均衡 JWT认证 Golang 编程 边缘服务 服务契约 微服务脚手架 通信协议 (Rest&RPC) Saga事务一致性 ServiceMesh 动态配置 服务注册 分布式追踪 服务度量 开源生态能力互通 SpringBoot Zipkin Apollo Istio SpringCloud 是一个使用Go构造的、建立在etcd存储上的高性能、高可用服务中心。 Java微服务SDK Java Chassis是一个由编程模型、运行模型、通信模型和服务契约四个部分组成的微服务框架。 Saga 分布式事务解决方案 Saga 是一个微服务数据一致性解决方案。 Go微服务SDK 编程模型 方面的工作,做为核心开发人员参与了Narayana和Blacktie项目。 从2017年底开始参与了Apache ServiceComb有关Saga部分的实现,利用Byteman 与ServiceComb的初次会面 • 红帽 Narayana LRA (Long Running Action) • ServiceComb Saga • 我们需要解决相同的问题 • 如何在微服务环境中实现事务管理 • 传统ACID在分布式环境中的局限性 • 基于Saga模型的最终一致性 ## 在Saga项目中的一些贡献 • 利用Byteman工具完善了异常和超时测试场景 与Narayana LRA在定义规范方面进行合作0 码力 | 9 页 | 2.27 MB | 2 年前3
My Participation in ServiceComb - Apache Committer 成长经验分享.jpg) ## Contents 1. Biography 2. My First Meet with ServiceComb 3. My Contributions to the Saga Project 4. How to Advance Skills in Open-Source Projects 5. Suggestions for Developers ## Biography the Narayana and Blacktie projects as a core developer. Participated in the implementation of the Saga part of Apache ServiceComb and optimized the exception and timeout test scenarios by using tools such environments. ## My First Meet with ServiceComb • Red Hat Narayana LRA (Long Running Action) • ServiceComb Saga • We need to solve the same problems: • How to manage transactions in microservice-based environments0 码力 | 9 页 | 2.23 MB | 2 年前3
华为微服务框架ServiceCombChassis • Java/Go 微服务框架 • 提供微服务注册发现以及限流降级,容错熔断等治理功能 ## • Service Center • 高性能,高可用服务注册中心 ## • Saga • 微服务数据一致性问题解决方案 • 提供一个集中式的事务协调器,协调微服务之间的事务,保证事务最终一致性 ## ServiceComb Chassis架构  ## 微服务数据一致性问题 ## Saga介绍 • 1987年Hector & Kenneth 发表论文 Sagas • Saga = Long Live Transaction (LLT) • LLT = T1 + T2 + T3 + ... + Tn • 每个本地事务Tx edu/andru/cs711/2002fa/reading/sagas.pdf ## 分布式Saga系统  ## Saga Pack版本 • Alpha - 族群领袖,Saga 协调器 • Omega-族群成员,事务协调代理  服务注册 分布式追踪 服务度量 拥抱开源生态 SpringBoot Apollo Zipkin Skywalking SpringCloud Chassis 高性能的微服务框架,提供服务注册发现以及动态配置管理,以及限流降级,容错熔断等服务治理功能 ## • Service Center 基于Etcd高性能,高可用服务注册中心 • Saga • 微服务事务最终一致性问题解决方案 • 提供一个集中式的事务协调器,协调微服务之间的事务调用,保证事务最终一致性 https://github.com/apache?q=incubator-servicecomb 服务中心升级 边缘服务 系统Metric 异步调用API 2017年6月 2017年8月 2017年9月 2017年10月 2017年12月 Saga 0.0.1 Saga 0.0.2 集中式Saga原型 Saga调用支持条件判断 #### ServiceComb 1.0.0-m2 新特性 ## • Java Chassis - 全面支持文件上传与下载 监控指标模块优化0 码力 | 16 页 | 877.58 KB | 2 年前3
解密SHARDINGSPHERE与SERVICECOMB联合打造的分布式事务解决方案2_1.jpg) ## 目录 CONTENTS Apache ShardingSphere生态 Apache ShardingSphere事务体系 Apache ServiceComb-saga 分布式事务解决方案的合作与探索 ## Apache ShardingSphere简介  Consistency CAP原则 2PC事务 Availability XA Partition tolerance saga BASE事务 TCC 基于可靠消息的事务 ## 事务对比 ||本地事务|两阶段事务|柔性事务| |---|---|---|---| |业务改造|无|无|实现相关接口| |一致性|不支持|强一致|最终一致| |事务层级|数据库层|数据库层|服务层|  ## Saga概述  论文出处:https://www0 码力 | 19 页 | 4.18 MB | 2 年前3
Apache ServiceComb (Incubating) Community Roadmapcontract Dynamic configuration Token authentication Microservice scaffolding Service registration Saga transaction consistency Distributed tracing Open-source ecosystems Service measurement Dubbo Center • A high-performance and high availability service registration center based on ETCD ## • Saga • A solution to eventual consistency of microservice transactions • Provides a centralized transaction metrics Asynchronous call API 2017-06 2017-08 2017-09 2017-10 2017-12 Saga 0.0.1 Saga 0.0.2 Centralized Saga prototype Saga invocation supports condition judgment. Most developers are Huawei employees;0 码力 | 20 页 | 7.95 MB | 2 年前3
共 44 条
- 1
- 2
- 3
- 4
- 5













