 微服务场景下的数据一致性解决方案 - 殷湘• 向前恢复 • 向后恢复 2 • 2个特点 • 和平 • 统一 2 • 2种运行模式 • 图遍历 • Akka Actor 2 恢复策略 - 向前恢复 • 重试N次直到成功或采取回退措施 (人工干预) B C A Saga transact transact transact B C A Saga transact 恢复策略 -向后恢复 • 补偿 B0 码力 | 31 页 | 4.28 MB | 1 年前3 微服务场景下的数据一致性解决方案 - 殷湘• 向前恢复 • 向后恢复 2 • 2个特点 • 和平 • 统一 2 • 2种运行模式 • 图遍历 • Akka Actor 2 恢复策略 - 向前恢复 • 重试N次直到成功或采取回退措施 (人工干预) B C A Saga transact transact transact B C A Saga transact 恢复策略 -向后恢复 • 补偿 B0 码力 | 31 页 | 4.28 MB | 1 年前3
 ServiceComb 的前世今生框架 代码 框架 代码 接口 文档 接口 文档 接口 文档 生成 生成 • 面向契约而不是逻辑 • 解耦服务提供者和消费者的开发顺序 • 契约定义为语言中立 • 规范化系统接口,让实现与文档的同 步成为必须 • 通过工具简化整个过程 API First 增速微服务开发 --- 工具支持 OpenAPI (Swagger) 定义 文档生成器:生成HTML与符合 华为规范文档 Mock生成器:生成Mock工具, 用于测试微服务 现有代码提取 OpenAPI工具 与RPC的IDL互 转工具 protobuf3 多语言多框架代 码生成器 多语言Protobuf3对象 编码库 Java 微服务编程框架 Go 框架 其他 框架 Spring MVC JAX-RS POJO Martini 灰度发布 监控运维APM Go语言 XXX语言 Java语言 服务契约 & OpenAPI SpringMVC JAX-RS RPC编程 REST通讯 XX通讯插件 RPC通讯 TCC XX事务 强事务 多语言 多编程框架 多通信协议 多事务一致性 Java 微服务 Go 微服务 XX语言 微服务 Spring微0 码力 | 16 页 | 1.45 MB | 1 年前3 ServiceComb 的前世今生框架 代码 框架 代码 接口 文档 接口 文档 接口 文档 生成 生成 • 面向契约而不是逻辑 • 解耦服务提供者和消费者的开发顺序 • 契约定义为语言中立 • 规范化系统接口,让实现与文档的同 步成为必须 • 通过工具简化整个过程 API First 增速微服务开发 --- 工具支持 OpenAPI (Swagger) 定义 文档生成器:生成HTML与符合 华为规范文档 Mock生成器:生成Mock工具, 用于测试微服务 现有代码提取 OpenAPI工具 与RPC的IDL互 转工具 protobuf3 多语言多框架代 码生成器 多语言Protobuf3对象 编码库 Java 微服务编程框架 Go 框架 其他 框架 Spring MVC JAX-RS POJO Martini 灰度发布 监控运维APM Go语言 XXX语言 Java语言 服务契约 & OpenAPI SpringMVC JAX-RS RPC编程 REST通讯 XX通讯插件 RPC通讯 TCC XX事务 强事务 多语言 多编程框架 多通信协议 多事务一致性 Java 微服务 Go 微服务 XX语言 微服务 Spring微0 码力 | 16 页 | 1.45 MB | 1 年前3
 消费者云CSE微服务实践发、测试、部署运维和治理,通过 全功能团队的建设,让业务真正敏捷起来 微服务框架技术选型-支持多语言  尽管现在以Java和GO语言为主,但是从架构演进角度考虑,未来 会根据消费者业务自身的特点引入更适合的语言  服务框架丌要绑定具体的语言实现,例如内部通信协议使用某种 语言特定的序列化机制、发布泛型、抽象接口等 微服务框架技术选型-灵活和轻量级架构  当前业务服务  最佳实践  无论Rest API,戒者RPC Highway API,统一使用Swagger YAML定义API  服务端和客户端都基于API定义,通过CSE提供的工具生成丌同语言的类库, 客户端可以丌导入服务端的类库定义,双方互相解耦  始终以在线的API定义为准,防止服务端私自修改接口代码(例如增减字段、 修改字段类型)  每日微服务流水线构建,及时发现接口丌兼容问题0 码力 | 22 页 | 1.39 MB | 1 年前3 消费者云CSE微服务实践发、测试、部署运维和治理,通过 全功能团队的建设,让业务真正敏捷起来 微服务框架技术选型-支持多语言  尽管现在以Java和GO语言为主,但是从架构演进角度考虑,未来 会根据消费者业务自身的特点引入更适合的语言  服务框架丌要绑定具体的语言实现,例如内部通信协议使用某种 语言特定的序列化机制、发布泛型、抽象接口等 微服务框架技术选型-灵活和轻量级架构  当前业务服务  最佳实践  无论Rest API,戒者RPC Highway API,统一使用Swagger YAML定义API  服务端和客户端都基于API定义,通过CSE提供的工具生成丌同语言的类库, 客户端可以丌导入服务端的类库定义,双方互相解耦  始终以在线的API定义为准,防止服务端私自修改接口代码(例如增减字段、 修改字段类型)  每日微服务流水线构建,及时发现接口丌兼容问题0 码力 | 22 页 | 1.39 MB | 1 年前3
 华为企业级PaaS 微服务应用10年软件⾏业经验,2012年进⼊云计算领域,对PaaS, DevOps, APM等有深⼊的研究和实践经验。 负责华为公司微服务框架的设计,开发和落地,微服务引擎云服务商⽤ 上线公有云,开发国内首个Go语言微服务框架与Service mesh商用方案, 并助力企业在生产环境中使用。 现任公有云PaaS服务ServiceStage首席工程师 3 github.com/apache?q=servicecomb 基础设施 Build, ship and run in any infrastructure • 开发者不需要知道应用部署到容器还是虚机中,只需要像过去一样开发应用 • Java,Go,Nodejs等语言可部署到ARM,x86不同的基础设施中 • 完善的自动化促使组织能够管理大规模,快速的部署应用实例,应对业务流量,需求的变化 源码 软件中心 流水线 构建 归档 部署 配置中心 java com/apache?q=servicecomb 为什么选择ServiceComb • 兼容Spring Cloud与ServiceComb等开源生态,使开发者能够无改造迁移上云 • 多语言解决方案:Java,Go两种语言框架与Service mesh方案 • 契约管理:自动生成API文档,并在中心管理,使集成更加流畅,约束接口不能任意变更 servicecomb.apache.org github0 码力 | 17 页 | 3.42 MB | 1 年前3 华为企业级PaaS 微服务应用10年软件⾏业经验,2012年进⼊云计算领域,对PaaS, DevOps, APM等有深⼊的研究和实践经验。 负责华为公司微服务框架的设计,开发和落地,微服务引擎云服务商⽤ 上线公有云,开发国内首个Go语言微服务框架与Service mesh商用方案, 并助力企业在生产环境中使用。 现任公有云PaaS服务ServiceStage首席工程师 3 github.com/apache?q=servicecomb 基础设施 Build, ship and run in any infrastructure • 开发者不需要知道应用部署到容器还是虚机中,只需要像过去一样开发应用 • Java,Go,Nodejs等语言可部署到ARM,x86不同的基础设施中 • 完善的自动化促使组织能够管理大规模,快速的部署应用实例,应对业务流量,需求的变化 源码 软件中心 流水线 构建 归档 部署 配置中心 java com/apache?q=servicecomb 为什么选择ServiceComb • 兼容Spring Cloud与ServiceComb等开源生态,使开发者能够无改造迁移上云 • 多语言解决方案:Java,Go两种语言框架与Service mesh方案 • 契约管理:自动生成API文档,并在中心管理,使集成更加流畅,约束接口不能任意变更 servicecomb.apache.org github0 码力 | 17 页 | 3.42 MB | 1 年前3
 微服务创新新品发布务领域的微 服务中使用 了多种不同 语言进行开 发部署 使能多微服 务技术栈开 发的微服务 应用之间协 同工作和共 同治理 使能满足第三 方认证被广泛 采纳的趋势下 认证鉴权的性 能和安全的要 求 帮助企业用 户达成业务 模型和数据 集成标准统 一 通过易于理 解的数据和 入口,管理 复杂的分布 式系统配置 分布式系统配置中心 服务中心异构通信 多语言运行环境 微服务鉴权 微服务契约工具 apache.org 服务网格-Mesher https://github.com/go-mesh/mesher (正在迁移到Apache ServiceComb) 使用服务网格Mesher接入多语言,和编程框架统一治理 关键组件 - Control panel - Registry - Protocol - 监控 - 安全 拥抱生态 - ServiceComb - Istio - Promethues center Java chassis微服务 kie Spring cloud微服务 pack Mesher ServiceComb UX .Net 服务 PHP服务 NodeJS服务 其他语言编写 服务 Java 编写服务 ServiceComb全景图 9 github.com/apache?q=servicecomb servicecomb.apache.org ServiceMesh0 码力 | 12 页 | 2.96 MB | 1 年前3 微服务创新新品发布务领域的微 服务中使用 了多种不同 语言进行开 发部署 使能多微服 务技术栈开 发的微服务 应用之间协 同工作和共 同治理 使能满足第三 方认证被广泛 采纳的趋势下 认证鉴权的性 能和安全的要 求 帮助企业用 户达成业务 模型和数据 集成标准统 一 通过易于理 解的数据和 入口,管理 复杂的分布 式系统配置 分布式系统配置中心 服务中心异构通信 多语言运行环境 微服务鉴权 微服务契约工具 apache.org 服务网格-Mesher https://github.com/go-mesh/mesher (正在迁移到Apache ServiceComb) 使用服务网格Mesher接入多语言,和编程框架统一治理 关键组件 - Control panel - Registry - Protocol - 监控 - 安全 拥抱生态 - ServiceComb - Istio - Promethues center Java chassis微服务 kie Spring cloud微服务 pack Mesher ServiceComb UX .Net 服务 PHP服务 NodeJS服务 其他语言编写 服务 Java 编写服务 ServiceComb全景图 9 github.com/apache?q=servicecomb servicecomb.apache.org ServiceMesh0 码力 | 12 页 | 2.96 MB | 1 年前3
 Apache ServiceComb 微服务创新项目解读在同一个业 务领域的微 服务中使用 了多种不同 语言进行开 发部署 使能多微服 务技术栈开 发的微服务 应用之间协 同工作和共 同治理 使能满足第三 方认证被广泛 采纳的趋势下 认证鉴权的性 能和安全的要 求 帮助企业用 户达成业务 模型和数据 集成标准统 一 通过易于理 解的数据和 入口,管理 复杂的分布 式系统配置 多语言运行环境 服务中心异构通信 微服务鉴权 分布式系统配置中心 http://servicecomb.apache.org [Github ] https://github.com/apache?q=servicecomb Mesher - 开箱即用的异构、多语言、非侵入式微服务框架 基于Golang实现的高性能服务网格框架,支持零侵入业 务代码实现微服务化改造,与流行微服务框架治理互通 • 项目地址 https://github.com/apach [Website] http://servicecomb.apache.org [Github ] https://github.com/apache?q=servicecomb Mesher - 多语言场景下向微服务架构演进 • 快速入门 http://servicecomb.apache.org/cn/docs/mersher-quick-start/ ServiceComb Service0 码力 | 13 页 | 1.24 MB | 1 年前3 Apache ServiceComb 微服务创新项目解读在同一个业 务领域的微 服务中使用 了多种不同 语言进行开 发部署 使能多微服 务技术栈开 发的微服务 应用之间协 同工作和共 同治理 使能满足第三 方认证被广泛 采纳的趋势下 认证鉴权的性 能和安全的要 求 帮助企业用 户达成业务 模型和数据 集成标准统 一 通过易于理 解的数据和 入口,管理 复杂的分布 式系统配置 多语言运行环境 服务中心异构通信 微服务鉴权 分布式系统配置中心 http://servicecomb.apache.org [Github ] https://github.com/apache?q=servicecomb Mesher - 开箱即用的异构、多语言、非侵入式微服务框架 基于Golang实现的高性能服务网格框架,支持零侵入业 务代码实现微服务化改造,与流行微服务框架治理互通 • 项目地址 https://github.com/apach [Website] http://servicecomb.apache.org [Github ] https://github.com/apache?q=servicecomb Mesher - 多语言场景下向微服务架构演进 • 快速入门 http://servicecomb.apache.org/cn/docs/mersher-quick-start/ ServiceComb Service0 码力 | 13 页 | 1.24 MB | 1 年前3
 Apache ServiceComb 开源微服务社区契约校验 文档自 动生成 微服务脚手架 快速入门 案例代码库 用户手册 社区网站 开源异构微服务兼容 内核 服务中心 微服务开发框架 TCC&Saga 分布式事务框架 认证框架 配置中心 多语言方案 Rest(OpenAPI) / RPC 云原生 接入 流行 生态 Apache ServiceComb 融合开源生态的一站式微服务解决方案 融合开源生态的一站式微服务解决方案 • 轻量级边缘服务 纯异步内核 内置监控治理 分布式事务方案 标准契约管理 复杂留给自己,极简留给用户 • 跨服务事务一致性 • 多语言,同时选型 • 灵活扩展、定制 • 减少基础设施运 维工作量 为解决微服务化痛点而生 在同一个业 务领域的微 服务中使用 了多种不同 语言进行开 发部署 使能多微服 务技术栈开 发的微服务 应用之间协 同工作和共 同治理 使能满足第三 方认证被广泛 采纳的趋势下 采纳的趋势下 认证鉴权的性 能和安全的要 求 帮助企业用 户达成业务 模型和数据 集成标准统 一 通过易于理 解的数据和 入口,管理 复杂的分布 式系统配置 多语言运行环境 服务中心异构通信 微服务鉴权 分布式系统配置中心 微服务契约工具 19 年Apache ServiceComb新品发布 面对用户痛点持续创新 财政业务应用 指导 规约 支撑 支撑 云平台 财政业务中台 财政云0 码力 | 15 页 | 2.86 MB | 1 年前3 Apache ServiceComb 开源微服务社区契约校验 文档自 动生成 微服务脚手架 快速入门 案例代码库 用户手册 社区网站 开源异构微服务兼容 内核 服务中心 微服务开发框架 TCC&Saga 分布式事务框架 认证框架 配置中心 多语言方案 Rest(OpenAPI) / RPC 云原生 接入 流行 生态 Apache ServiceComb 融合开源生态的一站式微服务解决方案 融合开源生态的一站式微服务解决方案 • 轻量级边缘服务 纯异步内核 内置监控治理 分布式事务方案 标准契约管理 复杂留给自己,极简留给用户 • 跨服务事务一致性 • 多语言,同时选型 • 灵活扩展、定制 • 减少基础设施运 维工作量 为解决微服务化痛点而生 在同一个业 务领域的微 服务中使用 了多种不同 语言进行开 发部署 使能多微服 务技术栈开 发的微服务 应用之间协 同工作和共 同治理 使能满足第三 方认证被广泛 采纳的趋势下 采纳的趋势下 认证鉴权的性 能和安全的要 求 帮助企业用 户达成业务 模型和数据 集成标准统 一 通过易于理 解的数据和 入口,管理 复杂的分布 式系统配置 多语言运行环境 服务中心异构通信 微服务鉴权 分布式系统配置中心 微服务契约工具 19 年Apache ServiceComb新品发布 面对用户痛点持续创新 财政业务应用 指导 规约 支撑 支撑 云平台 财政业务中台 财政云0 码力 | 15 页 | 2.86 MB | 1 年前3
 ServiceComb在Service Mesh的
探索与思考2013年微服务开发平台中的IR组件 - 2015年 sidecar组件 5 Huawei Confidential 6 Mesher - Service Mesh理论的实现 - 基于go语言开发 - 接入ServiceComb等开源生态 - 高性能,11mb常驻内存,1毫秒延迟 Huawei Confidential Mesher架构总览 7 关键组件 - Control panel 12 一站式解决方案:开发框架与Mesher混合使用 - 基于ServiceComb解决方案,Mesher,go chassis等组件,打造华为公有云微服务引擎 - 支持java,go语言编程框架和多语言接入 - 支持异构基础设施 - 对接多种监控系统 Data plane Mesher Service Java chassis Service Infrastructure0 码力 | 21 页 | 8.48 MB | 1 年前3 ServiceComb在Service Mesh的
探索与思考2013年微服务开发平台中的IR组件 - 2015年 sidecar组件 5 Huawei Confidential 6 Mesher - Service Mesh理论的实现 - 基于go语言开发 - 接入ServiceComb等开源生态 - 高性能,11mb常驻内存,1毫秒延迟 Huawei Confidential Mesher架构总览 7 关键组件 - Control panel 12 一站式解决方案:开发框架与Mesher混合使用 - 基于ServiceComb解决方案,Mesher,go chassis等组件,打造华为公有云微服务引擎 - 支持java,go语言编程框架和多语言接入 - 支持异构基础设施 - 对接多种监控系统 Data plane Mesher Service Java chassis Service Infrastructure0 码力 | 21 页 | 8.48 MB | 1 年前3
 ServiceComb在华为消费者云的亿级用户微服务实践 服务治理:可商用的服务治理能力  成熟和商用支持:Apache孵化项目,公司内部大规模使 用,专职的团队支撑 微服务框架 RPC框架 跨语言:  gRPC  Thrift  ServiceComb Java语言:  Dubbo  Motan LB 内置LB: 客户端负载均 衡 外置LB: Nginx、 Ribbon SLB 注册中心 配置服务:  Zookeeper API描述:无论Rest API,或者RPC Highway API,统一使用Swagger YAML定义API  微服务代码生成:服务端和客户端都基于API定义,通过 ServiceComb提供的工具生成不同语言的类库,客户端可以不导入服务 端的类库定义,双方互相解耦  微服务接口测试:测试基于流水线的API定义生成自动化测试用例, 防止开发本地随意修改API  微服务API依赖关系:通过微服务流水线编译、打包和系统集成0 码力 | 15 页 | 1.15 MB | 1 年前3 ServiceComb在华为消费者云的亿级用户微服务实践 服务治理:可商用的服务治理能力  成熟和商用支持:Apache孵化项目,公司内部大规模使 用,专职的团队支撑 微服务框架 RPC框架 跨语言:  gRPC  Thrift  ServiceComb Java语言:  Dubbo  Motan LB 内置LB: 客户端负载均 衡 外置LB: Nginx、 Ribbon SLB 注册中心 配置服务:  Zookeeper API描述:无论Rest API,或者RPC Highway API,统一使用Swagger YAML定义API  微服务代码生成:服务端和客户端都基于API定义,通过 ServiceComb提供的工具生成不同语言的类库,客户端可以不导入服务 端的类库定义,双方互相解耦  微服务接口测试:测试基于流水线的API定义生成自动化测试用例, 防止开发本地随意修改API  微服务API依赖关系:通过微服务流水线编译、打包和系统集成0 码力 | 15 页 | 1.15 MB | 1 年前3
 ServiceComb 介绍框架 代码 框架 代码 框架 代码 接口 文档 接口 文档 接口 文档 生成 生成 • 面向接口契约而不是逻辑 • 解耦服务提供者和消费者的开发顺序 • 契约定义为语言中立 • 规范化系统接口,让实现与文档的同步 • 通过工具简化整个过程 API First & Code First 服务契约定义 注册中心、治理中心 SpringMVC JAXRS http://github.com/ServiceComb ServiceComb代码库信息 − Java-chassis • Java版的微服务框架 − service-center • 基于go语言的服务中心 − ServiceComb-Saga • 长时间运行事务处理框架 ServiceComb组件的新特性 • Service-Center 0.2.0 • 提供了管理控制台,对注册的服务实例提供管理功能0 码力 | 16 页 | 1.26 MB | 1 年前3 ServiceComb 介绍框架 代码 框架 代码 框架 代码 接口 文档 接口 文档 接口 文档 生成 生成 • 面向接口契约而不是逻辑 • 解耦服务提供者和消费者的开发顺序 • 契约定义为语言中立 • 规范化系统接口,让实现与文档的同步 • 通过工具简化整个过程 API First & Code First 服务契约定义 注册中心、治理中心 SpringMVC JAXRS http://github.com/ServiceComb ServiceComb代码库信息 − Java-chassis • Java版的微服务框架 − service-center • 基于go语言的服务中心 − ServiceComb-Saga • 长时间运行事务处理框架 ServiceComb组件的新特性 • Service-Center 0.2.0 • 提供了管理控制台,对注册的服务实例提供管理功能0 码力 | 16 页 | 1.26 MB | 1 年前3
共 21 条
- 1
- 2
- 3













