 康彬-基于微服务的混合云和同城双活实践微服务体系下的混合云&同城双活 实践探索 康彬(robinkang) 乐信/架构总监 康彬(robinkang) 乐信/架构总监 14年研发及管理经验,从0到1组建了乐信架构团队, 主导并推动了乐信集团业务系统从单体应用架构向微服 务架构的演变、从 php 技术栈向 java 技术栈的无缝转 型,从私有云向混合云的进化,及新一代的同城双活技 术架构的研发与落地工作 信用成长成就品质生活 信用成长成就品质生活 • 大促的痛及混合云实践 • 单元化&双活的应用场景 • 同城双活的探索之路 • 未来的规划 大促的痛及混合云实践 业务服务层 资源层 分期乐 前端业务服务 桔子理财 鼎盛资管 …… mq管理系统 job管理系统 中台服务层 核心交易平台 风控审核平台 计算资源 (CPU) 存储资源 (内存|磁盘) 网络资源 (ip|端口|带宽) 中间件层 微服务框架 data_proxy LB DNS app/browser nginx-Proxy nginx-Proxy data(r) 同城双活的探索 未来的担忧 单机房 如果发生机房级的灾难怎么办? 单集群 随着流量越来越大,集群规模 越来越大,怎么破? 单元化&多活的范围 boss 客服系统 销售系统 风控审核 催收系统 政策管理 prod devops 监控系统 调用链路 日志系统0 码力 | 47 页 | 6.09 MB | 1 年前3 康彬-基于微服务的混合云和同城双活实践微服务体系下的混合云&同城双活 实践探索 康彬(robinkang) 乐信/架构总监 康彬(robinkang) 乐信/架构总监 14年研发及管理经验,从0到1组建了乐信架构团队, 主导并推动了乐信集团业务系统从单体应用架构向微服 务架构的演变、从 php 技术栈向 java 技术栈的无缝转 型,从私有云向混合云的进化,及新一代的同城双活技 术架构的研发与落地工作 信用成长成就品质生活 信用成长成就品质生活 • 大促的痛及混合云实践 • 单元化&双活的应用场景 • 同城双活的探索之路 • 未来的规划 大促的痛及混合云实践 业务服务层 资源层 分期乐 前端业务服务 桔子理财 鼎盛资管 …… mq管理系统 job管理系统 中台服务层 核心交易平台 风控审核平台 计算资源 (CPU) 存储资源 (内存|磁盘) 网络资源 (ip|端口|带宽) 中间件层 微服务框架 data_proxy LB DNS app/browser nginx-Proxy nginx-Proxy data(r) 同城双活的探索 未来的担忧 单机房 如果发生机房级的灾难怎么办? 单集群 随着流量越来越大,集群规模 越来越大,怎么破? 单元化&多活的范围 boss 客服系统 销售系统 风控审核 催收系统 政策管理 prod devops 监控系统 调用链路 日志系统0 码力 | 47 页 | 6.09 MB | 1 年前3
 张波-虎牙直播在微服务改造中的实践8.11 Service Mesh Meetup #6 广州站 微服务改造事项 DNS-F在数据 库场景的落地 名字服务在负 载均衡场景的 落地 DNS-F在微服 务场景的落地 应用层探活 数据库故障 恢复时间长 服务故障牵 引慢,流量 接入生效时 间长 DNS生效慢 内部服务无 就近接入能 力 服务性能下 降流量不摘 除 实 例 切 换 能 力 秒 级 流 量 牵 引 1、依赖公共localDNS,解析不稳定,延迟大 落地效果 12 平均解析时间 之前200ms+ 现在1ms以下 缓存命中率 之前92% 现在99.8%+ 解析失败率 之前0.1% 现在0% 应用探活场景下的落地 1、web专区的nginx有健康检查的功能, 但是只是基于tcp, 根据 一段时间请求否正常, 对节点进行临时屏蔽 2、web专区和业务都会有自己的拨测, 一般只会用于告警, 缺乏 都能根据业务反馈, 开源时间 2016.5 2018.6 配置实时推送 支持(HTTP长轮询1s内) 支持(HTTP长轮询1s内) 版本管理 自动管理 自动管理 配置回滚 支持 支持 权限管理 支持 待支持 多集群多环境 支持 支持 监听查询 支持 支持 多语言 Go,C++,Python,Java,.net,OpenAPI Python,Java,Nodejs,OpenAPI 分布式高可用最小集群数量0 码力 | 27 页 | 1.03 MB | 1 年前3 张波-虎牙直播在微服务改造中的实践8.11 Service Mesh Meetup #6 广州站 微服务改造事项 DNS-F在数据 库场景的落地 名字服务在负 载均衡场景的 落地 DNS-F在微服 务场景的落地 应用层探活 数据库故障 恢复时间长 服务故障牵 引慢,流量 接入生效时 间长 DNS生效慢 内部服务无 就近接入能 力 服务性能下 降流量不摘 除 实 例 切 换 能 力 秒 级 流 量 牵 引 1、依赖公共localDNS,解析不稳定,延迟大 落地效果 12 平均解析时间 之前200ms+ 现在1ms以下 缓存命中率 之前92% 现在99.8%+ 解析失败率 之前0.1% 现在0% 应用探活场景下的落地 1、web专区的nginx有健康检查的功能, 但是只是基于tcp, 根据 一段时间请求否正常, 对节点进行临时屏蔽 2、web专区和业务都会有自己的拨测, 一般只会用于告警, 缺乏 都能根据业务反馈, 开源时间 2016.5 2018.6 配置实时推送 支持(HTTP长轮询1s内) 支持(HTTP长轮询1s内) 版本管理 自动管理 自动管理 配置回滚 支持 支持 权限管理 支持 待支持 多集群多环境 支持 支持 监听查询 支持 支持 多语言 Go,C++,Python,Java,.net,OpenAPI Python,Java,Nodejs,OpenAPI 分布式高可用最小集群数量0 码力 | 27 页 | 1.03 MB | 1 年前3
 ServiceComb在Service Mesh的
探索与思考移版本为1.0的实例中,5% 转移到1.1版本 • 请求者的元数据中带有 env=production,那么要将 路由到元数据中带有 env=production的实例中 基于元数据的路由管理十分灵 活,可以满足用户大部分场景 Router Resolver Target Service Infos: Service name Metadata Read Route Rule and Convert Cache Service Instances: 10.24.0.23:8080 10.24.0.24:8080 … Istio Apollo Huawei Confidential 10 多协议支持 - 使用Invocation抽象 - 协议可快速接入到mesher中,并享受同样的治理能力 Http Request Grpc Request Transfer Invocation Handler Chain Consumer service Huawei Confidential Adaptor 11 ServiceComb Service Center架构演进 - 支持多注册中心 - 拥抱混合云架构 - 同时支持客户端自注册与平台注册 - 打通k8s与虚机等基础设施,可实现VM向容器平滑迁移 Service Center k8s adaptor etcdadaptor0 码力 | 21 页 | 8.48 MB | 1 年前3 ServiceComb在Service Mesh的
探索与思考移版本为1.0的实例中,5% 转移到1.1版本 • 请求者的元数据中带有 env=production,那么要将 路由到元数据中带有 env=production的实例中 基于元数据的路由管理十分灵 活,可以满足用户大部分场景 Router Resolver Target Service Infos: Service name Metadata Read Route Rule and Convert Cache Service Instances: 10.24.0.23:8080 10.24.0.24:8080 … Istio Apollo Huawei Confidential 10 多协议支持 - 使用Invocation抽象 - 协议可快速接入到mesher中,并享受同样的治理能力 Http Request Grpc Request Transfer Invocation Handler Chain Consumer service Huawei Confidential Adaptor 11 ServiceComb Service Center架构演进 - 支持多注册中心 - 拥抱混合云架构 - 同时支持客户端自注册与平台注册 - 打通k8s与虚机等基础设施,可实现VM向容器平滑迁移 Service Center k8s adaptor etcdadaptor0 码力 | 21 页 | 8.48 MB | 1 年前3
 可发布版-美团点评微服务OCTO-曹继光�� ��! 5.�� ��� ��! 6.�� ���! 1.�� ��! 链路级流量隔离 • 全链路灰度发布 • 全链路压测 • 全链路故障演练 服务治理实践(6)-星耀段t+ 异地容灾 扩展 回顾:服务治理系统的三项必备能力 % 标准化 & 易用性 3 高性能 降u服务间协作成本 提高服务开发效率 确保框架性能不是瓶颈 • 服务治理系统OCTO演进及架构设计0 码力 | 35 页 | 14.10 MB | 1 年前3 可发布版-美团点评微服务OCTO-曹继光�� ��! 5.�� ��� ��! 6.�� ���! 1.�� ��! 链路级流量隔离 • 全链路灰度发布 • 全链路压测 • 全链路故障演练 服务治理实践(6)-星耀段t+ 异地容灾 扩展 回顾:服务治理系统的三项必备能力 % 标准化 & 易用性 3 高性能 降u服务间协作成本 提高服务开发效率 确保框架性能不是瓶颈 • 服务治理系统OCTO演进及架构设计0 码力 | 35 页 | 14.10 MB | 1 年前3
 ServiceCenter - 服务注册中心负载均衡,服务订阅(客户端LB,长连接) 3. 运行时依赖(Go) 4. 可靠性(BASE,最终一致性) 从服务注册中心到服务管理中心 1. 元数据 2. 依赖关系 3. 实例变化推送 4. 多租隔离 5. 高可用性保障 从服务注册中心到服务管理中心 元数据 1. 应用App,便于微服务可在多个应用间重用 2. 微服务名称,App内唯一 3. 微服务描述信息,让使用者可以快速了解到业务范畴等 戒失败。 Partition tolerance(分区容错性),当出现网络分区故障时系统的容错能力 从微服务到服务管理中心 1.实例缓存机制 从微服务到服务管理中心 2.心跳保活机制 从服务管理中心到etcd 1.异步缓存机制 从服务管理中心到etcd 2.异步心跳机制 自我保护机制 前面提到的缓存机制,保证了ServiceCenter在etcd出现网络分区故障时依0 码力 | 18 页 | 856.27 KB | 1 年前3 ServiceCenter - 服务注册中心负载均衡,服务订阅(客户端LB,长连接) 3. 运行时依赖(Go) 4. 可靠性(BASE,最终一致性) 从服务注册中心到服务管理中心 1. 元数据 2. 依赖关系 3. 实例变化推送 4. 多租隔离 5. 高可用性保障 从服务注册中心到服务管理中心 元数据 1. 应用App,便于微服务可在多个应用间重用 2. 微服务名称,App内唯一 3. 微服务描述信息,让使用者可以快速了解到业务范畴等 戒失败。 Partition tolerance(分区容错性),当出现网络分区故障时系统的容错能力 从微服务到服务管理中心 1.实例缓存机制 从微服务到服务管理中心 2.心跳保活机制 从服务管理中心到etcd 1.异步缓存机制 从服务管理中心到etcd 2.异步心跳机制 自我保护机制 前面提到的缓存机制,保证了ServiceCenter在etcd出现网络分区故障时依0 码力 | 18 页 | 856.27 KB | 1 年前3
 Service Mesh的思考及在华为云的实践Breaker Rate Limiting Config Center Scheduler Governance API server Prometheus Zipkin 功能与实现原理 多协议支持 • 任意协议请求都被抽象为Invocation模型进行处理,最终再转换 为协议请求转发 6/30/2018 Http Request Grpc Request Transfer Invocation 移版本为1.0的实例中,5% 转移到1.1版本 • 请求者的元数据中带有 env=production,那么要将 路由到元数据中带有 env=production的实例中 基于元数据的路由管理十分灵 活,可以满足用户大部分场景 Router Resolver Target Service Infos: Service name Metadata Read Route Rule and Convert0 码力 | 29 页 | 1.55 MB | 1 年前3 Service Mesh的思考及在华为云的实践Breaker Rate Limiting Config Center Scheduler Governance API server Prometheus Zipkin 功能与实现原理 多协议支持 • 任意协议请求都被抽象为Invocation模型进行处理,最终再转换 为协议请求转发 6/30/2018 Http Request Grpc Request Transfer Invocation 移版本为1.0的实例中,5% 转移到1.1版本 • 请求者的元数据中带有 env=production,那么要将 路由到元数据中带有 env=production的实例中 基于元数据的路由管理十分灵 活,可以满足用户大部分场景 Router Resolver Target Service Infos: Service name Metadata Read Route Rule and Convert0 码力 | 29 页 | 1.55 MB | 1 年前3
 Apache ServiceComb 开源微服务社区跨服务事务一致性 • 多语言,同时选型 • 灵活扩展、定制 • 减少基础设施运 维工作量 为解决微服务化痛点而生 在同一个业 务领域的微 服务中使用 了多种不同 语言进行开 发部署 使能多微服 务技术栈开 发的微服务 应用之间协 同工作和共 同治理 使能满足第三 方认证被广泛 采纳的趋势下 认证鉴权的性 能和安全的要 求 帮助企业用 户达成业务 模型和数据 集成标准统 一 通过易于理 … 案例:助力某大学教学管理信息系统上云 应用市场 游戏中心 视频 阅读 音乐 天际通 生活服务 华为钱包 主题 HiBoard 智能家居 浏览器 华为消费者云服务 1.8亿+ 应用市场月活 用户 8080万 日增照片 4亿+ 用户 • 传统单体架构升级、维护、扩容成本高 • 架构不统一,有使用SpringCloud、传统RPC、 Servlet等各种架构,维护成本非常高 大系统小做,缩短上线周期0 码力 | 15 页 | 2.86 MB | 1 年前3 Apache ServiceComb 开源微服务社区跨服务事务一致性 • 多语言,同时选型 • 灵活扩展、定制 • 减少基础设施运 维工作量 为解决微服务化痛点而生 在同一个业 务领域的微 服务中使用 了多种不同 语言进行开 发部署 使能多微服 务技术栈开 发的微服务 应用之间协 同工作和共 同治理 使能满足第三 方认证被广泛 采纳的趋势下 认证鉴权的性 能和安全的要 求 帮助企业用 户达成业务 模型和数据 集成标准统 一 通过易于理 … 案例:助力某大学教学管理信息系统上云 应用市场 游戏中心 视频 阅读 音乐 天际通 生活服务 华为钱包 主题 HiBoard 智能家居 浏览器 华为消费者云服务 1.8亿+ 应用市场月活 用户 8080万 日增照片 4亿+ 用户 • 传统单体架构升级、维护、扩容成本高 • 架构不统一,有使用SpringCloud、传统RPC、 Servlet等各种架构,维护成本非常高 大系统小做,缩短上线周期0 码力 | 15 页 | 2.86 MB | 1 年前3
 ServiceComb 的前世今生文档生成器:生成HTML与符合 华为规范文档 Mock生成器:生成Mock工具, 用于测试微服务 现有代码提取 OpenAPI工具 与RPC的IDL互 转工具 protobuf3 多语言多框架代 码生成器 多语言Protobuf3对象 编码库 Java 微服务编程框架 Go 框架 其他 框架 Spring MVC JAX-RS POJO Martini 微服务部署平台(PaaS) 微服务开发 微服务基础治理 微服务高级治理 服 务 发 现 服 务 配 置 服 务 路 由 多 通 信 访 问 调 用 链 跟 踪 多 事 务 管 理 多 运 行 时 管 理 ServiceMesh 容 错 & 熔 断 限 流 降 级 服 务 隔 离 容 量 预 测 服务契约 & OpenAPI SpringMVC JAX-RS RPC编程 REST通讯 XX通讯插件 RPC通讯 TCC XX事务 强事务 多语言 多编程框架 多通信协议 多事务一致性 Java 微服务 Go 微服务 XX语言 微服务 Spring微 服务 遗留 应用 微服务云服务: https://servicestage0 码力 | 16 页 | 1.45 MB | 1 年前3 ServiceComb 的前世今生文档生成器:生成HTML与符合 华为规范文档 Mock生成器:生成Mock工具, 用于测试微服务 现有代码提取 OpenAPI工具 与RPC的IDL互 转工具 protobuf3 多语言多框架代 码生成器 多语言Protobuf3对象 编码库 Java 微服务编程框架 Go 框架 其他 框架 Spring MVC JAX-RS POJO Martini 微服务部署平台(PaaS) 微服务开发 微服务基础治理 微服务高级治理 服 务 发 现 服 务 配 置 服 务 路 由 多 通 信 访 问 调 用 链 跟 踪 多 事 务 管 理 多 运 行 时 管 理 ServiceMesh 容 错 & 熔 断 限 流 降 级 服 务 隔 离 容 量 预 测 服务契约 & OpenAPI SpringMVC JAX-RS RPC编程 REST通讯 XX通讯插件 RPC通讯 TCC XX事务 强事务 多语言 多编程框架 多通信协议 多事务一致性 Java 微服务 Go 微服务 XX语言 微服务 Spring微 服务 遗留 应用 微服务云服务: https://servicestage0 码力 | 16 页 | 1.45 MB | 1 年前3
 Metrics in ServiceComb 1.0.0-m1务领域中的 定义: “对微服务的某个指标给予一个可量化程度的测量” • Metrics应该具备的特性: • Comparative(可对比):指标能够在不同的微服务或同一个微服务的多 个实例之间比较; • Understandable(易理解):指标所衡量的对象、计算方法和输出的结果 值都是容易理解的; • Ratio(理想的比例):理想结果可预见,可以立即用于比较。 5秒,那么Prometheus必定会在三次采样中获取一次重复数据; • 设定存在取舍,不同的场景对周期的需求不同;但可以通过设置多 周期弥补。(例如统计报告中的日报、周报、月报、季报、年报) 优势: • 具备高性能的同时又能保持极低的开销。 使用多周期适应不同的场景需求 支持Health Check • 通过Health Check让微服务支 持检查依赖组件的状态并返 回,可以用于制定策略,也0 码力 | 18 页 | 938.89 KB | 1 年前3 Metrics in ServiceComb 1.0.0-m1务领域中的 定义: “对微服务的某个指标给予一个可量化程度的测量” • Metrics应该具备的特性: • Comparative(可对比):指标能够在不同的微服务或同一个微服务的多 个实例之间比较; • Understandable(易理解):指标所衡量的对象、计算方法和输出的结果 值都是容易理解的; • Ratio(理想的比例):理想结果可预见,可以立即用于比较。 5秒,那么Prometheus必定会在三次采样中获取一次重复数据; • 设定存在取舍,不同的场景对周期的需求不同;但可以通过设置多 周期弥补。(例如统计报告中的日报、周报、月报、季报、年报) 优势: • 具备高性能的同时又能保持极低的开销。 使用多周期适应不同的场景需求 支持Health Check • 通过Health Check让微服务支 持检查依赖组件的状态并返 回,可以用于制定策略,也0 码力 | 18 页 | 938.89 KB | 1 年前3
 微服务创新新品发布2019 2 github.com/apache?q=servicecomb servicecomb.apache.org 在同一个业 务领域的微 服务中使用 了多种不同 语言进行开 发部署 使能多微服 务技术栈开 发的微服务 应用之间协 同工作和共 同治理 使能满足第三 方认证被广泛 采纳的趋势下 认证鉴权的性 能和安全的要 求 帮助企业用 户达成业务 模型和数据 集成标准统 一 通过易于理 mb-service-center/tree/master/syncer Syncer是一个多服务中心的同步工具,专为大型微服务架构设计,实现不同的微服务技术栈实现的微服务业务可以进行数 据通信,未来可支持跨云的数据通信支持。 •对应用程序透明。同步工具启停,不应该对应用程序的原有流程产生影响。 •为多服务中心提供对等网络。他们之间是松耦合的,成员可以自由加入与退出。 •对异构服务中心提供支持。0 码力 | 12 页 | 2.96 MB | 1 年前3 微服务创新新品发布2019 2 github.com/apache?q=servicecomb servicecomb.apache.org 在同一个业 务领域的微 服务中使用 了多种不同 语言进行开 发部署 使能多微服 务技术栈开 发的微服务 应用之间协 同工作和共 同治理 使能满足第三 方认证被广泛 采纳的趋势下 认证鉴权的性 能和安全的要 求 帮助企业用 户达成业务 模型和数据 集成标准统 一 通过易于理 mb-service-center/tree/master/syncer Syncer是一个多服务中心的同步工具,专为大型微服务架构设计,实现不同的微服务技术栈实现的微服务业务可以进行数 据通信,未来可支持跨云的数据通信支持。 •对应用程序透明。同步工具启停,不应该对应用程序的原有流程产生影响。 •为多服务中心提供对等网络。他们之间是松耦合的,成员可以自由加入与退出。 •对异构服务中心提供支持。0 码力 | 12 页 | 2.96 MB | 1 年前3
共 25 条
- 1
- 2
- 3













