百度APP基于Istio实现基础架构升级 - lightning talk - MichaelXu。 多数模块对单点异常,慢节点等异常缺乏容忍能力,推动每个模块独立修复,成本高,上线周期长。 ## 高级架构能力能否多语言、多框架支持? ➢ 因重试导致雪崩,底层RPC框架需要重复建设来定制动态熔断能力。 ➢ 升级一级服务建设中,发现很多模块单点、多点故障不能容忍,能否低成本解决? ## ● 运维架构能力是否具备可移植性?是否能低成本复制新的产品线? 比如常用运维降级、止损能力各个产品 构故障韧性能力) 治理效率方面(提升一级模块建成效率,二级模块预案能力) ● 周边生态方面(流量复制,稳定性工程,动态调参,服务可观测性) ● 覆盖率方面(百度APP100%核心模块,流量占比>79.5%) ## 收益介绍-防雪崩&长尾 ## 防雪崩能力:动态BackupRequest  ## 业务价值 降低业务因Redis回退引发的雪崩问题。(业务层RPC框架Retry策略托管到Mesh,通过平响分位值动态抑制BP请求) ## Mesh价值 1. 业务无需代码改动即可开启,在线调整backup超时分位值、熔断阈值。 2. 支持动态调整配置参数,对接智能调参系统。 ## 业务价值 LocalityAware负载均衡策略以下游节点的吞吐除以延时作为分流权值,优化长尾平响问题。0 码力 | 9 页 | 2.20 MB | 1 年前3
ServiceComb 介绍大量老旧系统代码,如何支持其服务化改造? • 云化应用面临的监控已经分布调用追踪问题? ## ServiceComb 编程模型 (同步、异步、Reactive...) 运行模型 服务发现 熔断 负载均衡 配置 跟踪 通信模型 (序列化、传输协议) 服务契约 (OpenAPI) ## 为什么需要服务契约 • 作为服务消费者 - 需要明确知道如何调用服务? - 需要知道服务调用参数有哪些?0 码力 | 16 页 | 1.26 MB | 2 年前3
Dynamic Model in TVM0 码力 | 24 页 | 417.46 KB | 1 年前3
API7 ⽹关技术⽩⽪书控制面板以可视化形式操作网关,支持监控分析、日志审计、多租户管理、多集群切换、多工作分区等能力。 ### 1.1 技术架构 ### 1. 数据平面 数据平面用于接收并处理调用方请求,使用 Lua 与 Nginx 动态控制请求流量。当请求进入时,将根据预设路由规则进行匹配,匹配到的请求将被网关转发至对应上游服务。在此过程中,网关有能力根据预设规则中不同插件的配置,使用一系列插件对请求从进入到离开的各个阶段进行操作 6. 全动态能力 修改网关配置、增加或修改插件等,无需重启网关服务即可实时生效;支持动态加载 SSL 证书; ### 7. 扩展能力强 借助灵活的插件机制,可针对内部业务完成功能定制;支持自定义负载均衡算法与路由算法,不受限于 API 网关实现;通过运行时动态执行用户自定义函数方式来实现 Serverless,使网关边缘节点更加灵活; ### 8. 治理能力丰富 如故障隔离、熔断降级、限流 服务治理:API7 支持熔断、限流、限速、IP 黑白名单、故障隔离等能力,通过控制台可视化面板,可方便、清楚地完成相关功能设置; - 自定义插件:API7 内置了50多种插件,涵盖安全防护、流量控制、日志记录等各个分类,可满足绝大多数企业需求。对于特定业务,API7 目前支持 Lua、Java、Go、Python 编写自定义插件,且插件可以作用于流量进出的各个阶段。得益于全动态能力,新增、修改插件无需停机重启,可实时生效,避免中断业务;0 码力 | 19 页 | 1.12 MB | 2 年前3
降级预案在同程艺龙的工程实践-王俊翔 航班起降均为当地时间 ## 缺乏熔断设计  ## 交易故障 ## 缺乏降级设计 • 核心业务是否有损 ·弱依赖 - 熔断限流,有损服务 serviceA 弱依赖 熔断、限流 · 强依赖 - 备选服务,降级实现 用户请求 service serviceB 强依赖 降级 serviceC- 备选服务 serviceC 强依赖 ## 业界解决方案 - HYSTRIX Netflix开源的一款容错框架,支持多种降级熔断技术  • 可重用的逻辑 资源密集型部分 领域驱动设计 数据访问方式 936e4c395f448894f/p48_2.jpg) ## 集中配置管理 ## 配置信息的管理 与服务在同一个包中 使用隔离的配置文件 使用环境变量管理 ## 配置信息管理的挑战 • 动态更新配置信息 多实例间的同步 • 配置信息的版本管理 Message Broker  不稳定调用(熔断、隔离) 不稳定架构与基础设施(容灾多活) 安全 服务鉴权 服务零信任 Kratos CloudWeGo 服务框架 据调研数据 70%的线上问题都是由于变更导致的 运行时稳定性问题更是防不胜防 保障接口流量处于正常容量以内,多余流量进行拒绝或平滑 系统保护 自适应系统过载保护,基于系统指标与实时容量 并发控制 精准控制并发请求数,避免过多的慢调用占满线程池导致服务不可用 熔断降级 热点防控 针对不稳定的弱依赖服务自动进行熔断,或提前降级 针对自动识别的热点参数值进行流量控制,避免热点流量占用过多资源 失败重试 针对指定的非致命错误异常自动重试,最大限度避免系统抖动 ’ alt=‘OCR图片’/> + Token Bucket 流控 ’ alt=‘OCR图片’/> 自动熔断不稳定接口,避免级联故障 业务场景/痛点 业务高峰期,某些非核心的下游服务接口遇到性能瓶颈或网络问题,影响业务主流程运转,且可能需要较长时间恢复,小问题变成大问题。 解决方式 事前配置熔断规则,当满足熔断条件(慢调用比例、异常比例)时自动触发熔断,直接返回 fallback 的结果,这样既可以保障调用端不被不稳定服务拖垮0 码力 | 36 页 | 6.55 MB | 1 月前3
22-云原生的缘起、云原生底座、PaaS 以及 Service Mesh 等之道-高磊·弹性伸缩:集群级、数据中心内 · 特征:数据库、中间件等能力形成标准化服务、可共享平台架构(应用不改造,维持大颗粒) ·资源管理:中间件层集中动态管理调度 ·业务部署周期:天级 · 特征:微服务化实现进程级资源共享,业务敏捷 ·资源管理:应用层集中、动态管理和调度 ·弹性伸缩:全自动化、数据中心级(跨区域/DC/AZ) ·业务部署周期:DevOps交付模式,分钟~小时级 云原生  • 分布式系统问题 服务注册发现 • 运维相关问题 • 容错熔断机制 • 动态配置管理 • 限流降级 系统监控 · 路由管理 OSCAR云计算开源产业大会 微服务的雄关漫道 · 服务框架 ## NETFLIX OSS DUBBO • Service Mesh (POJO/Spring MVC/JAX-RS) ServiceComb微服务解决方案 熔断/容错 处理链 Golang 编程 限流 负载均衡 Token认证 边缘服务 服务契约 微服务脚手架 Saga事务一致性 通信协议 (Rest&RPC) ServiceMesh 动态配置 服务注册 分布式追踪 服务度量 拥抱开源生态 Dubbo SpringBoot SpringCloud Istio … Prometheus K8S OSCAR云计算开源产业大会 ## • Java Chassis - 高性能的微服务框架,提供服务注册发现以及动态配置管理,以及限流降级,容错熔断等服务治理功能 ## • Service Center 基于Etcd高性能,高可用服务注册中心 • Saga • 微服务事务最终一致性问题解决方案 • 提供一个集中式的事务0 码力 | 20 页 | 4.00 MB | 2 年前3
共 939 条
- 1
- 2
- 3
- 4
- 5
- 6
- 94













