微服务环境下的系统治理与容错微服务环境下的系统治理与容错 王新栋 • 《架构修炼之道》作者,《决战618:探秘京东技术取胜之道》联合作者; • 对分布式、微服务系统有多年实战经验,所设计和研发的系统经历了多次百亿流量的验证; • 热爱分享,维护技术公众号 [程序架道],对高并发、高可用系统有持续不懈的追求; 个人微信号 技术公众号 • 微服务架构 • 容错 • 总结 • 治理 微服务架构 架构 架构 解耦合 独立开发部署 架构、组织、流程 微服务架构定义“三步法” 微服务拆分方法 微服务拆分-指导原则 拆服务-单体重构的节奏 服务分解的四大障碍 1、网络延迟 2、同步通信降低了可用性 3、跨服务的数据一致性 4、上帝类 微服务的忠告 n 第一,要记住微服务不是解决所有问题的万能 “银弹”。 n 第二,编写整洁的代码和使用自动化测试至关重要,因为这是现代软件开发的基础。 器和其他工具。 n 第四,确保你的服务松耦合,并且可以独立开发、测试和部署,不要搞成分布式单体,那将会是巨大的灾难。 n 第五,也是最重要的,不能只是在技术上采用微服务架构。拥抱DevOps的原则和实践,在组织结构上实现跨 职能的自治团队,这必不可少。 还必须记住:实现微服务架构并不是你的目标。你的目标是加速大型复杂应用程序的开发。 --Chris Richardson 容错 故障和问题0 码力 | 45 页 | 16.09 MB | 1 年前3
庖丁解牛:华为云微服务工具解放开发者庖丁解牛:华为云微服务工具解放开发者 部门:应用平台服务 作者:王启军 日期:20190920 Security Level: 目录 1. 微服务拆分工具 2. 契约管理工具 Huawei Confidential 3 微服务架构的优势 因素 单体架构 微服务架构 交付速度 较慢 较快 故障隔离范围 线程级 进程级 整体可用性 较低 更高 架构持续演进 困难 简单 沟通效率 实现业务复杂性分解难度 困难 容易 产品创新复杂度 困难 容易 一致性实现成本 低 高 时延 低 高 资源成本 低 高 关联查询复杂度 简单 复杂 远程调用 不涉及 涉及 服务治理 不涉及 涉及 对开发人员的要求 低 高 对工具的依赖 较低 较高 运维复杂度 低 高 Huawei Confidential 4 微服务架构的第一大问题——如何拆分微服务? •影响因素 >团队大小 >交付周期 >大量关联查询 >系统架构复杂度提升 Huawei Confidential 6 通过微服务拆分工具解放开发者 支撑活动 方法论 • ThoughtWorks五步十一阶 • DDD聚合 • 事件源Event Sourcing • 命令查询责任分离CQRS 现有做法 业务改造 投入大 + 应用上云 + IaaS 应用微服务改造 + PaaS 业务创新 如AI 拆表 拆界面及业务逻辑 微服务化改造典型流程0 码力 | 14 页 | 1.54 MB | 1 年前3
ServiceComb设计揭秘:标准与开发1 ServiceComb设计揭秘:标准与开发 华为CloudBU PaaS微服务引擎开发团队 代码阅读 • 一、系统架构解读 • 二、系统模块解读 • 三、框架的启劢不停止 • 四、框架运行时请求发送不处理过程 ServiceComb 开发框架 通信模型 (restful、 highway) 编程模型 关注微信公众号获取信息 加入微信群进行交流 通过邮件列表参不讨论 通过Github发起PR • 线下: 月度Meetup 丌定期沙龙探讨 微服务引擎产品首页 登录华为云->产品->应用服务->微服务引擎 微服务引擎官方论坛 答疑求助 微服务技术探讨 教程攻略 干货分享 禅与摩托车 颈椎康复… 人生感悟…0 码力 | 9 页 | 831.77 KB | 1 年前3
消费者云CSE微服务实践消费者云CSE微服务实践 李林锋 关于我 9年电信软件平台中间件开发、设计、架构经验 精通Netty、Mina等网络通信框架 华为软件 短信/彩信/WAP网关平台SGP、API开放集成网关API Fabric首席设计师 华为软件分布式服务框架DSF首席设计师 《Netty权威指南》、《分布式服务框架原理不实践》作者 微博、微信:Nettying 公众号:Netty乊家 • 华为消费者云业务简介 • 微服务框架技术选型 • CSE在消费者云业务的实践 议题 华为消费者云业务包括 华为应用市场、华为视频、华为钱包、华为运 劢健康等服务,为华为和荣耀手机提供精品云服务,提升用户体验 华为消费者云业务简介 微服务框架技术选型-业务服务化目标 系统解耦,功能内聚,提升需求交付效率:通过业务的拆分和解耦,让系统敏 应用的黑盒调用(本地Java方法调用)转变成透明的API契约调用 服务自治:通过在线的微服务治理结合云平台,可以实现微服务的弹性伸缩、故障自劢 迁移、降级熔断等,保障微服务的运行质量,提升业务SLA 建立服务化团队:随着业务的丌断拆分,大的研发团队也会被拆分成2-Pizza Team, 微服务团队由3-5人组成,负责整个微服务的设计、开发、测试、部署运维和治理,通过 全功能团队的建设,让业务真正敏捷起来 微服务框架技术选型-支持多语言0 码力 | 22 页 | 1.39 MB | 1 年前3
华为云分布式事务DTM最佳实践apache.org github.com/apache?q=servicecomb 华为云分布式事务DTM最佳实践. 王启军 2 github.com/apache?q=servicecomb servicecomb.apache.org 王启军,华为云PaaS团队架构师,负责微服 务框架的开发。曾任当当网架构师,主导电商平台 架构设计;曾就职于搜狐负责手机微博的研发。 《持续演进的Cloud0 码力 | 15 页 | 3.10 MB | 1 年前3
Service Mesh在华为公
有云的实践Service Mesh在华为公 有云的实践 ⽥田晓亮 华为架构师 ⽥田晓亮 华为 架构师 8年软件⾏行业经验,曾就职于三星,2012年进⼊入云计算领域,对PaaS, DevOps,APM有深⼊入的研究和实践经验。⽅方案⽀支撑近千台VM中应⽤用部署管理监 控 2016年加⼊入华为担任架构师,负责微服务的Go语⾔言开发框架及Service Mesh设计 和落地,Go语⾔言微服务框架被华 和落地,Go语⾔言微服务框架被华为5G核⼼心⺴⽹网络采⽤用,Service Mesh服务商⽤用上 线公有云 • 简介 • 实现⼀一个Service Mesh • 使⽤用Service Mesh快速构建微服务 • ⽣生态与扩展 • Service Mesh在华为内部的技术演进 我们在构建微服务,⽽而构建微服务是困难 的 微服务架构模式引⼊入的问题 路由规则 • 引流 • ⽀支持权重 • 根据消费者信息或请求特征进⾏行引流 Consumer 0.1 Provider 1.2 Provider 1.3 cookie:version=0.1 cookie:version=0.2 Consumer 0.2 Chassis 语⾔言开发框架 Go-micro Go-kit 还有其他解题思路么? • 多语⾔言SDK⽀支持 • 学习曲线 • 绑定特定技术栈,不容易切换⽅方案 • ⽼老旧单体应⽤用 抽象 L7 SpringMVC0 码力 | 52 页 | 4.37 MB | 1 年前3
开源开发者的一天 - Apache ServiceComb开源开发者的一天 - Apache ServiceComb [社区网站] http://servicecomb.apache.org [Github ] https://github.com/apache?q=servicecomb 议程 • 什么是开源 • 开源开发是什么状态 • 如何加入到开源社区 [社区网站] http://servicecomb.apache.org [Github government by merit 多样化的社区,防止单一公司的控制,鼓励 协同开发 “community over code” 决策透明公开:讨论,决定和存档均基于 mailing list 商业友好的开源许可证, Apache项目使用 permissive license的Apache 2.0许可证 代码是社区合作开发的 投票机制管理社区 代表个人行为不代表企业利益 基于尊重、诚实、专注于技术的社区模 的群组.” 开发者 用户 贡献者 布道师 文档专家 营销 法务 开源社区构成 开源社区⾥⾯没有项⽬经理,只有技术领导 [社区网站] http://servicecomb.apache.org [Github ] https://github.com/apache?q=servicecomb • 自底向上构建,通过原型快速迭代验证 • 全方位开放,分布式开发,跨公司沟通协作0 码力 | 31 页 | 2.02 MB | 1 年前3
Service Mesh的思考及在华为云的实践Service Mesh的思考及在华为云 的实践 田晓亮 6/30/2018 9年软件⾏业经验,曾就职于三星,2012年进⼊云计算领域,对 PaaS, DevOps,APM有深⼊的研究和实践经验。⽅案⽀撑近 千台VM中应⽤部署管理监控 。华为云微服务引擎Mesher作者。 华为 架构师 田晓亮 website: http://servicecomb.incubator.apache.org/ 一种基础设施层,服务间 通信通过Service mesh进 • 一种TCP/IP之上的网络模 型行 • 一个轻量的网络代理,与 业务部署在一起 • 可靠的传输复杂网络拓扑 中的服务请求,将服务变 为现代的云原生服务 Website: http://servicecomb.incubator.apache.org/ Gitter: https://gitter.im/ServiceCombUsers/Lobby Mesh Transport Network Physical Application Transport Network Physical 为什么要使用 • 解放业务开发者 • 改造遗留老应用成为云原生应用 • 代码0侵入 • 学习曲线 Website: http://servicecomb.incubator.apache.org/ Gitter: https://gitter0 码力 | 29 页 | 1.55 MB | 1 年前3
微服务创新新品发布认证鉴权的性 能和安全的要 求 帮助企业用 户达成业务 模型和数据 集成标准统 一 通过易于理 解的数据和 入口,管理 复杂的分布 式系统配置 分布式系统配置中心 服务中心异构通信 多语言运行环境 微服务鉴权 微服务契约工具 Apache ServiceComb 面对用户痛点持续创新 3 github.com/apache?q=servicecomb servicecomb.apache Control panel - Registry - Protocol - 监控 - 安全 拥抱生态 - ServiceComb - Istio - Promethues - Zipkin - 华为云 异构基础设施 - CCE - Kubernetes - Docker - VM - Bare metal 4 github.com/apache?q=servicecomb servicecomb SpringCloud …… ServiceComb toolkit 划分微服务 (含依赖关系) 定义契约 (接口和模型) 发布契约 ServiceComb 契约开发工具 开发微服务 测试微服务 客户+集成商 软件开发商 部署微服务 契约仓库 微服务 运行环 境 验收微服务 协同企业遗留系统微服务化快速改造,实现基于契约的数据、服务标准化管控 微服务契约工具 https://github0 码力 | 12 页 | 2.96 MB | 1 年前3
Apache ServiceComb 微服务创新项目解读使能满足第三 方认证被广泛 采纳的趋势下 认证鉴权的性 能和安全的要 求 帮助企业用 户达成业务 模型和数据 集成标准统 一 通过易于理 解的数据和 入口,管理 复杂的分布 式系统配置 多语言运行环境 服务中心异构通信 微服务鉴权 分布式系统配置中心 微服务契约工具 Apache ServiceComb [Website] http://servicecomb.apache.org [Github 基于Golang实现的高性能服务网格框架,支持零侵入业 务代码实现微服务化改造,与流行微服务框架治理互通 • 项目地址 https://github.com/apache/servicecomb-mesher • 开发计划 - 网关能力 - 融合生态 Istio/Promethues/Skywalking/… - 兼容异构基础设施 K8S/BareMetal/docker/VM/… [Website] http://servicecomb Toolkit - 遵循OpenAPI的微服务开发、改造工具 提供遵循OpenAPI规范的API、代码、文档相互转换和校 验的能力,帮助用户快速构建基于流行微服务框架和编程 模型的微服务脚手架工程,提升遗留系统重构、开发效率 • 项目地址 https://github.com/apache/servicecomb-toolkit • 开发计划 - 支持API生成Spring Cloud微服务工程0 码力 | 13 页 | 1.24 MB | 1 年前3
共 47 条
- 1
- 2
- 3
- 4
- 5













