张波-虎牙直播在微服务改造中的实践
好,新加入节点无需与所有节点互相广播同步信 息 由于使用广播同步信息,集群超过1000台机器 后对eureka集群压力很大 健康检查模式/方式 支持服务端/客户端/关闭检查模式,检查方式有 tcp、http、sql。支持自己构建健康检查器 客户端向服务端发送http心跳 负载均衡 支持 支持 手动上下线服务方式 通过控制台页面和API 通过调用API 跨中心同步 支持 不支持 k8s集成 支持 不支持 分组 Nacos可用根据业务和环境进行分组管理 2018.6 配置实时推送 支持(HTTP长轮询1s内) 支持(HTTP长轮询1s内) 版本管理 自动管理 自动管理 配置回滚 支持 支持 权限管理 支持 待支持 多集群多环境 支持 支持 监听查询 支持 支持 多语言 Go,C++,Python,Java,.net,OpenAPI Python,Java,Nodejs,OpenAPI 分布式高可用最小集群数量 Config2+Admin3+Portal*2+Mysql0 码力 | 27 页 | 1.03 MB | 1 年前3Service Mesh在华为公 有云的实践
,Service Mesh服务商⽤用上 线公有云 • 简介 • 实现⼀一个Service Mesh • 使⽤用Service Mesh快速构建微服务 • ⽣生态与扩展 • Service Mesh在华为内部的技术演进 我们在构建微服务,⽽而构建微服务是困难 的 微服务架构模式引⼊入的问题 路由规则 • 引流 • ⽀支持权重 • 根据消费者信息或请求特征进⾏行引流 Consumer • 新的故障点 • ⼀一定程度的性能降低 • 侵⼊入式框架有更强的定制和扩展能⼒力 • 部署复杂性 • 简介 • 实现⼀一个Service Mesh • 使⽤用Service Mesh快速构建微服务 • ⽣生态与扩展 • Service Mesh在华为内部的技术演进 第⼀一代:基于Nginx的微服务代理 • 2013年,微服务开发平台中的组 件,公司内部某电信业务 • 400多个微服务,800左右实例, PerHost模式运⾏行 • ⽀支持多种部署⽅方式 • 占⽤用资源⼩小(闲置10多M,并发运⾏行时30多M) • 简介 • 实现⼀一个Service Mesh • 使⽤用Service Mesh快速构建微服务 • ⽣生态与扩展 • 与PaaS平台结合 • Service Mesh在华为内部的技术演进 整体架构 Mesher Service Mesher Service Mesher0 码力 | 52 页 | 4.37 MB | 1 年前3庖丁解牛:华为云微服务工具解放开发者
技术栈选择 受限 灵活 可扩展性 受限 灵活 可重用性 低 高 实现业务复杂性分解难度 困难 容易 产品创新复杂度 困难 容易 一致性实现成本 低 高 时延 低 高 资源成本 低 高 关联查询复杂度 简单 复杂 远程调用 不涉及 涉及 服务治理 不涉及 涉及 对开发人员的要求 低 高 对工具的依赖 较低 较高 运维复杂度 低 高 Huawei Confidential 4 >服务数量太少,不够灵活 >一个user story影响众多服务 >接口频繁变更 >大量关联查询 >系统架构复杂度提升 Huawei Confidential 6 通过微服务拆分工具解放开发者 支撑活动 方法论 • ThoughtWorks五步十一阶 • DDD聚合 • 事件源Event Sourcing • 命令查询责任分离CQRS 现有做法 业务改造 投入大 + 应用上云 + IaaS acceptance. Huawei may change the information at any time without notice. 把数字世界带入每个人、每个家庭、 每个组织,构建万物互联的智能世界。 Bring digital to every person, home and organization for a fully connected, intelligent0 码力 | 14 页 | 1.54 MB | 1 年前3ServiceComb在Service Mesh的 探索与思考
1. Service mesh在华为的演进之路 2. Mesher实践 3. Mesher如何帮助企业快速转型微服 务架构 Huawei Confidential 我们需要微服务系统,但构建微服务系统是困难的 正文是微软雅黑14—32号字80%的灰色 3 Huawei Confidential Service Mesh - 2017年由William Morgan提出 - 支持TLS证书托管 插件化模块 1.0 支持Istio作为控制面板 支持发现 支持路由管理 支持Citadel安全管理 1.6 泛服务化,Mysql支持 1.8 支持grpc协议 支持本地健康查询 Sidecar Injector 1.5 目前版本 支持per host运行模式 支持Skywalking 1.7 支持更多的生态 1.9 2017.11 2018.11 2019.2 may change the information at any time without notice. Huawei Confidential 把数字世界带入每个人、每个家庭、 每个组织,构建万物互联的智能世界。 Bring digital to every person, home and organization for a fully connected, intelligent0 码力 | 21 页 | 8.48 MB | 1 年前3ServiceComb在华为消费者云的亿级用户微服务实践
微服务API依赖关系:通过微服务流水线编译、打包和系统集成 测试,识别并展示微服务API之间的依赖关系(我依赖谁、谁依赖我) API变更管控:API变更邮件通知和审批,每日微服务流水线构建, 及时发现接口不兼容问题 实践-不同的微服务开发风格 Website: http://servicecomb.incubator.apache.org/ Gitter: https://gitter 充值服务 APP付费下载服务 APP评论服务 业务线程池 手机客户端 WAP客户端 图书门户 单点故障 故障扩散 故障扩散 无线程池隔离仓: 充值服务 开户服务 客户资料查询服务 其它非关键服务 隔离仓-1 隔离仓-3 手机客户端 WAP客户端 图书门户 单点故障 正常 正常 隔离仓-2 配置隔离仓: 通过配置线程池隔离仓,实现快 慢接口、读写接口、核心和非核 http://servicecomb.incubator.apache.org/ Gitter: https://gitter.im/ServiceCombUsers/Lobby 以ServiceComb为核心构建的微服务架构体系,极大的提升了消费者云业务研发效率 需求的研发和交付周期缩短,业务更敏捷应对变化 可独立交付和升级的服务越来越多,业务之间逐步解耦,可独立演进 服务之间的接口契约可视化、可度量和管控,架构看护和优化更有章可循0 码力 | 15 页 | 1.15 MB | 1 年前3Metrics in ServiceComb Java Chassis 1.0.0-m1 让微服务运行状态清晰可见
微服务事务最终一致性问题解决方案,提供一个集中式的事务协调器,协调微 服务之间的事务调用,保证事务最终一致性 https://github.com/apache?q=servicecomb 4 github.com/apache?q=servicecomb servicecomb.apache.org 1 2 3 4 5 开源准备 构建社区 Apache基金会孵化 成为顶级项目 ServiceComb开源这两年 code 社区构建 8 github.com/apache?q=servicecomb servicecomb.apache.org 参与度 用户 开发者 贡献者 公众 开源社区的参与度 开发人员 市场推广 Logo设计 布道师 法律支持 9 github.com/apache?q=servicecomb servicecomb.apache.org 社区构建 • 抓住一切机会宣传项目 apache.org Apache孵化器 • 进入ASF孵化的目的 – 学习Apache做事之道 – 构建健康发展的社区 – 完善软件许可(License) – 与Apache的基础设施集成 – 发布合规版本 12 github.com/apache?q=servicecomb servicecomb.apache.org Apache孵化器 • 进入ASF孵化的步骤 – 提起孵化提案0 码力 | 18 页 | 3.12 MB | 1 年前3华为企业级PaaS 微服务应用
ServiceComb实践 案例 Agenda servicecomb.apache.org github.com/apache?q=servicecomb 面向开发者的数据中心演进 数据中心服务器虚拟化: Google,亚马逊等公司 以资源为中心: • AWS EC2,S3,Route53 • OpenStack • CloudStack • 混合云 以应用为中心: • Heroku 预验证环境 灰度环境 生产环境 商业生态(aPaaS/SaaS) 行业 (政府、教育、医疗、零售、……) 伙伴 (软通、中软、幸宜、博思、医 信、……) 工具(CPE) 设计和开发 构建 测试 发布上线 监控运维 部署 流 水 线 ( 持 续 集 成 、 持 续 交 付 ) 扩展插件: Eclipse等 扩展插件: 静态检查等 扩展插件: 三方部署系 统 扩展插件: 源码 软件中心 流水线 构建 归档 部署 配置中心 java python go nodejs php war jar 压缩包 二进制 Docker镜像 调整线上应用配置 x86 ARM CCI 虚机 CCE servicecomb.apache.org github.com/apache?q=servicecomb 围绕应用构建平台功能 • 操作的起点为应用0 码力 | 17 页 | 3.42 MB | 1 年前3开源开发者的一天 - Apache ServiceComb
由会员提名并投 票选拔 由会员提名并投票 选拔 拥有权利 提交issues 及patch 有代码库读 写权限 决策子项目 需求和方向 负责整体孵化项 目决策及投票 提议Committer 候选人及孵化器 候选项目 管理与监督基金会 商务与日常事务 • 注册在美国的非盈利组织 • 提供法律和基础设施的支持 • 完全的自愿组织,虚拟的全球化组织 • 有7000+ committers, 760+ 开源社区⾥⾯没有项⽬经理,只有技术领导 [社区网站] http://servicecomb.apache.org [Github ] https://github.com/apache?q=servicecomb • 自底向上构建,通过原型快速迭代验证 • 全方位开放,分布式开发,跨公司沟通协作 • 开源项目是新技术的试验场 • 开源依托于社区不断发展壮大 • 一群热爱开源的人们,全身心投入自己的时间来进行开发 开源项目形成 q=servicecomb 贡献代码 • 代码提交指南(http://servicecomb.apache.org/cn/developers/submit-codes) • 熟悉开源项目的代码 • 学会自己构建(build)项目 • 注意运行测试,保证自己修改 的代码不break build • 提交项目,发送PR • 进行相关的讨论 https://github.com/apache/serv0 码力 | 31 页 | 2.02 MB | 1 年前3走进开源 - Apache ServiceComb
由会员提名并投 票选拔 由会员提名并投票 选拔 拥有权利 提交issues 及patch 有代码库读 写权限 决策子项目 需求和方向 负责整体孵化项 目决策及投票 提议Committer 候选人及孵化器 候选项目 管理与监督基金会 商务与日常事务 • 涉猎领域 人工智能AI IoT 大数据 金融管理 区块链 …… • 未涉猎领域 机器人 自动驾驶 开源开发是什么状态 [社区网站] http://servicecomb.apache.org [Github ] https://github.com/apache?q=servicecomb • 自底向上构建,通过原型快速迭代验证 • 全方位开放,分布式开发,跨公司沟通协作 • 开源项目是新技术的试验场 • 开源依托于社区不断发展壮大 • 一群热爱开源的人们,全身心投入自己的时间来进行开发 开源项目开发 http://servicecomb.apache.org [Github ] https://github.com/apache?q=servicecomb LC3大会 正式开源 2017.11 捐赠给Apache 进入孵化器 成为Apache 顶级项目 华为开始实践 微服务 获中国信通信院 开源创新项目奖 尖峰开源人物奖 首个行业微服务标准 的核心参考框架 获中国电子标准院 中国优秀开源项目 一等奖 20120 码力 | 28 页 | 1.92 MB | 1 年前3解读Apache
Apache Committer - from 2005 Apache Member - from 2007 Apache Secretary - from 2010-2019 Apache 孵化器管理委员成员 Apache 董事会主席 Apache 软件基⾦会: Apache 软件基⾦会: 世界上最⼤的开源基⾦会 Apache基⾦会的使命 Apache基⾦会的使命 Apache软基⾦⾦会 0下繁荣发展, 为公众利益 创建开源软件。 公开成⽴于1999年的公益组织 公开成⽴于1999年的公益组织 使命: 为公众利益提供免费的软件。 第⼀个项⽬ 第⼀个项⽬ 世界上使⽤最⼴的服务器 ⾄2019已经成⽴24年 (加⼊ASF 20年) Apache 项⽬涉猎领域 Apache 项⽬涉猎领域 ⼈⼯智能 AI IoT ⼤数据 ⾦融管理 ⽓候变化 Apache项⽬还没有涉猎的领域[Yet] “免费的”培训 — 通过社区培训新的开发者省时省⼒ 法律保护 — ASF为贡献者提供法律保护 Apache孵化器 Apache孵化器 提供⼀个官⽅进⼊Apache 软件基⾦会途径。 通过导师为社区提供 Apache之道的培训。 Apache孵化器解读 Apache孵化器解读 Justin Mclean介绍 Justin Mclean介绍 25年+⾃由开发者 悉尼IoT Meetup0 码力 | 43 页 | 4.89 MB | 1 年前3
共 37 条
- 1
- 2
- 3
- 4