华为云分布式事务DTM最佳实践servicecomb.apache.org github.com/apache?q=servicecomb 华为云分布式事务DTM最佳实践. 王启军 2 github.com/apache?q=servicecomb servicecomb.apache.org 王启军,华为云PaaS团队架构师,负责微服 务框架的开发。曾任当当网架构师,主导电商平台 架构设计;曾就职于搜狐负责手机微博的研发。 适用广泛性 一般 一般 高 低 产品成熟度 高 高 一般 低 方案对比 6 github.com/apache?q=servicecomb servicecomb.apache.org 分布式事务管理中间件 (Distributed Transaction Management,DTM) 7 github.com/apache?q=servicecomb servicecomb.apache 一个完整的步骤 9 github.com/apache?q=servicecomb servicecomb.apache.org 使用限制及要求 • 接入DTM的应用程序TCC方法应保证幂等性。 • 接入DTM的应用程序TCC方法应保证原子性。 service DB request response X retry 10 github.com/apache?q=servicecomb servicecomb0 码力 | 15 页 | 3.10 MB | 1 年前3
《Saga分布式事务解决⽅案与实践》演讲者/姜宁《Saga分布式事务解决⽅方案与实践》 演讲者/姜宁 关于我 • 华为开源能⼒力力中⼼心 • ServiceComb项⽬目负责⼈人 • Apache Member , IPMC, 多个Apache项⽬目 • RedHat, IONA, Travelsky 议题 • 微服务事务⼀一致性问题? • 业界Saga的解决⽅方案 • ServiceComb Saga的演进 • 式获取更更新。 Saga的实现⽅方式 • 集中式的实现⽅方式 (Orchestration-based coordination) • 集中式协调器器负责服务调⽤用以及事务协调 • 分布式的实现⽅方式 (Choreography-based coordination) • 通过事件驱动的⽅方式来进⾏行行事务协调 http://microservices.io/patterns/data/saga refunded"); https://github.com/apache/camel/blob/master/camel-core/src/main/docs/eips/saga-eip.adoc 分布式Saga实现 http://microservices.io/patterns/data/saga.html Order Service Create Order Order state0 码力 | 39 页 | 2.78 MB | 1 年前3
《Saga分布式事务解决⽅案与实践》演讲者/姜宁《Saga分布式事务解决⽅方案与实践》 演讲者/姜宁 关于我 • 华为开源能⼒力力中⼼心 • ServiceComb项⽬目负责⼈人 • Apache Member , IPMC, 多个Apache项⽬目 • RedHat, IONA, Travelsky 议题 • 微服务事务⼀一致性问题? • 业界Saga的解决⽅方案 • ServiceComb Saga的演进 • Service Registry Dynamic Config Alpha Service A Omega Service B Omega Alpha Alpha 集中式的Saga协调器器 分布式Saga协调器器 集中式Saga协调器器 Saga Coordinator Saga Saga Saga ID: x Saga Log Saga Started T1 Started T10 码力 | 33 页 | 2.38 MB | 1 年前3
反应式微服务框架ServiceComb设计思想&mdash微服务架构调用次数更多 • 更高的性能,规模效应 • 更好的用户体验 业界趋势 n Java 9中把反应式流规范以 java.util.concurrent.Flow 类的方式添加到了标准库中 n Spring 5对反应式编程模型提供了内置支持,并增加了新的 WebFlux 模块来支持反应 式 Web 应用的开发 ServiceComb Apache孵化的第一个微服务框架。 服务契约 怎么解决中台开发命苦的问题?0 码力 | 33 页 | 5.68 MB | 1 年前3
解读Apache没有独裁者,没有否决权 - 依赖于建⽴共识 “Apache 之道” AKA “社区胜于代码” ASF依托于Apache之道运作 ASF依托于Apache之道运作 精英之治 - 个⼈通过他们的⼯作和⽅式获得功绩。 透明度 - 我们的项⽬是公开开发的,所以每个想参与的⼈都 能够参与。 社区 - 我们将社区健康放在⾸位。 注意不是所有的项⽬适合Apache之道的 Apache之道保证了: Apache之道保证了: “不需要去⼯作” “需要合适的协议” 由PMC授权 需要投票 需要电⼦签名 通过⼤范围的镜像系统分发 发布 发布 已签名 需要孵化免责声明 有 LICENSE 和 NOTICE ⽂件 遵循ALv2以及任何包括第三⽅软件的协议声明 源⽂件有ASF头 由未编译的源码构成 ⼆进制版本 ⼆进制版本 不是必需的 不是官⽅版本 同样需要遵守规则 毕业 毕业 展示了项⽬独⽴运作的能 Java Chassis - 具有 MicroServices 管理的⾼性能Java 服 务引擎 服务中⼼ - 基于Etcd的⾼性能服务中⼼ Pack - ⽀持Saga和TCC的Centrical分布式事务协调器 Mesher - 基于Go的服务⽹格实现 Kie - 全新设计的MicroServices配置中⼼ 进⼊Apache的⽅法 进⼊Apache的⽅法 撰写项⽬提案 找到 Champion0 码力 | 43 页 | 4.89 MB | 1 年前3
微服务创新新品发布同治理 使能满足第三 方认证被广泛 采纳的趋势下 认证鉴权的性 能和安全的要 求 帮助企业用 户达成业务 模型和数据 集成标准统 一 通过易于理 解的数据和 入口,管理 复杂的分布 式系统配置 分布式系统配置中心 服务中心异构通信 多语言运行环境 微服务鉴权 微服务契约工具 Apache ServiceComb 面对用户痛点持续创新 3 github.com/apache?q=servicecomb ETCD gossip 协议 6 github.com/apache?q=servicecomb servicecomb.apache.org 实现云原生的分布式系统配置中心,使能运维人员通过易于理解的数据和入口,管理复杂的分布式系统配置。 https://github.com/apache/servicecomb-kie Timeout(service=serviceB, schema=user -学习成本高,运维人员要学习这个只在团队内部生效的key规则 -所有的key集中在一种类型的视图中管理,管理成本高。 -不断增长的规则定义,越来越复杂,人类不可读。 -Key设计无法扩展变更,没法轻易变更数据结构 分布式系统配置中心 7 github.com/apache?q=servicecomb servicecomb.apache.org servicecomb-fence 提供了基于Oauth2.0和OpenID0 码力 | 12 页 | 2.96 MB | 1 年前3
Apache ServiceComb 微服务创新项目解读方认证被广泛 采纳的趋势下 认证鉴权的性 能和安全的要 求 帮助企业用 户达成业务 模型和数据 集成标准统 一 通过易于理 解的数据和 入口,管理 复杂的分布 式系统配置 多语言运行环境 服务中心异构通信 微服务鉴权 分布式系统配置中心 微服务契约工具 Apache ServiceComb [Website] http://servicecomb.apache.org [Github Service、Resource Server实现,简化用户开发难度 • 开发简单:提供配置文件和Annotation两种方式配置权限,支持权限配置和代码逻辑分离,也支持在使用Annotation声明式 的权限配置,相辅相成。 • 第三方认证支持:采用Open ID协议,对接Github等三方认证系统。 • 安全高效:混合Token模式和Session模式,满足性能和安全性的最佳组合。 • 快速入门 http://servicecomb.apache.org [Github ] https://github.com/apache?q=servicecomb 实现云原生的分布式系统配置中心,使能运维人员通过易于理解的数据和入口,管理复杂的分布式系统配置 • 项目地址:https://github.com/apache/servicecomb-kie Timeout(service=serviceB, schema=user0 码力 | 13 页 | 1.24 MB | 1 年前3
微服务环境下的系统治理与容错微服务环境下的系统治理与容错 王新栋 • 《架构修炼之道》作者,《决战618:探秘京东技术取胜之道》联合作者; • 对分布式、微服务系统有多年实战经验,所设计和研发的系统经历了多次百亿流量的验证; • 热爱分享,维护技术公众号 [程序架道],对高并发、高可用系统有持续不懈的追求; 个人微信号 技术公众号 • 微服务架构 • 容错 • 总结 • 治理 微服务架构 架构 架构 的要求。 微服务的微 微服务的两个“谬论” n 服务之间是强隔离的。 n 微服务是大型系统的唯一选择。 解耦合 独立开发部署 架构、组织、流程 微服务架构定义“三步法” 微服务拆分方法 微服务拆分-指导原则 拆服务-单体重构的节奏 服务分解的四大障碍 1、网络延迟 2、同步通信降低了可用性 3、跨服务的数据一致性 4、上帝类 微服务的忠告 n 第一,要记住微服务不是解决所有问题的万能 第二,编写整洁的代码和使用自动化测试至关重要,因为这是现代软件开发的基础。 n 第三,关注微服务的本质,即服务的分解和定义,而不是技术,如容器和其他工具。 n 第四,确保你的服务松耦合,并且可以独立开发、测试和部署,不要搞成分布式单体,那将会是巨大的灾难。 n 第五,也是最重要的,不能只是在技术上采用微服务架构。拥抱DevOps的原则和实践,在组织结构上实现跨 职能的自治团队,这必不可少。 还必须记住:实现微服务架构并不0 码力 | 45 页 | 16.09 MB | 1 年前3
微服务架构与领域驱动设计 - 王磊基于DevOps 的演进式架构 Shakespear A thousand Hamlets in a thousand people’s eyes. 微服务架构 �7 什什么是领域驱动设计 领域驱动设计 �8 领域驱动设计解决的两个核⼼心问题: 1.业务架构如何合理理的设计划分? 2.技术架构与业务架构保持⼀一致? 领域驱动设计是⼀一种设计⽅方法,围绕业务概念构建领域模型, 并通过分离技术实现的复杂性,从⽽而控制软件演化的复杂度。 Tacking Complexity in the heart of software �9 微服务架构与领域驱动设计? �10 • 能有效⽀支撑演进式架构 微服务架构与领域驱动设计 �11 随着时间的推移,采⽤用领域驱动设计⽐比采⽤用 以数据中⼼心设计的软件复杂度要低得多。 《Pattern of EEA》 • 能有效降低复杂软件的维护成本 领域驱动设计的核⼼心 02 基于事件⻛风暴暴的DDD实践 03 如何落地领域驱动设计? Vaughn Vernon Eric Evan Event Storming是⼀一种快速探索复杂业务领域的⽅方法: Event Storming Effective: 可以让实践者在数⼩小时内理理解复杂业务模型 Engaging: 带着问题的和拥有答案的⼈人⼀一起来构建模型 Efficient:0 码力 | 28 页 | 1.84 MB | 1 年前3
消费者云CSE微服务实践 精通Netty、Mina等网络通信框架 华为软件 短信/彩信/WAP网关平台SGP、API开放集成网关API Fabric首席设计师 华为软件分布式服务框架DSF首席设计师 《Netty权威指南》、《分布式服务框架原理不实践》作者 微博、微信:Nettying 公众号:Netty乊家 • 华为消费者云业务简介 • 微服务框架技术选型 • CSE在消费者云业务的实践 First:通过服务化,让服务提供者和消费者乊间通过微服务API建立契约,利 用Swagger OpenAPI规范,最终将微服务API规范化、标准化、在线化。系统从传统单体 应用的黑盒调用(本地Java方法调用)转变成透明的API契约调用 服务自治:通过在线的微服务治理结合云平台,可以实现微服务的弹性伸缩、故障自劢 迁移、降级熔断等,保障微服务的运行质量,提升业务SLA 建立服务化团 和采集时需要做脱敏处理、资源占用要合理 敏感运维操作,需要记录安全日志,例如服务上线和下线、服务 的流控阈值修改等 微服务框架技术选型-服务治理能力 服务框架丌能只单单解决分布式RPC调用、服务注册&发现和路 由问题,更重要的是业务微服务上线乊后,需要提供实用和丰富 的在线治理能力 流量控制、幵发控制、超时控制、服务降级、服务熔断、路由权 重调整… 常用0 码力 | 22 页 | 1.39 MB | 1 年前3
共 37 条
- 1
- 2
- 3
- 4













