降级预案在同程艺龙的工程实践-王俊翔级点,降级是如 何实现的 • 缺乏UI、没有灵活的参数、策略略配置,没有预案制定管理理能⼒力力 业务保障平台建设之路路 业务保障平台建设之路路 服务管理理 策略略管理理 预案制定 线上演练 • 降级服务统⼀一注册管理理,通过降 级服务质量量数据从整体反映各应 ⽤用的降级点和可⽤用性保障措施 • 降级策略略集中管理理,通过参数 化、配置化、脚本化⽅方式实现线 上策略略的灵活调整 上策略略的灵活调整 • 依据服务重要程度,从全局制定 分级预案,对降级点进⾏行行预案编 排,并跟踪监控降级链路路的执⾏行行 • 发现潜在故障,多维度验证预案 有效性,评估系统可靠性,提供 降级策略略、参数调整的优化依据 整体架构 Agent 服务降级注册 降级熔断通知 元数据存储 控制 中⼼心 ETCD ETCD ETCD ETCD 服务注册监听 降级控制中⼼心 元数据 TurboMQ 对预案进⾏行行有效性、合理理性验证 • 通过破坏性测试,发现系统的潜在故障,及时修正,并做好降级预防措施 • 参数修正,及时调整流控、降级策略略,优化告警、超时参数设置 • 模拟线上故障,进⾏行行故障复现,验证故障后续的处理理措施是否⾏行行之有效 • 以战养兵,历练团队,让⼯工程师有更更多机会积累经验,提升应对故障的能⼒力力 常态化的故障演练对系统进⾏行行反复验证 系统设计 Agent0 码力 | 26 页 | 18.67 MB | 1 年前3
海尔实时计算平台技术选型与实践Kafka Queue Kafka Spout Storm Topology Monitor Server Message Notification 实时计算质量保证 实时计算结果正确性如何验证? 方案一:结果导向 Source Flume HDFS Kafka Storm Mr / Impala Result Result 备 份 比 对 方案二:经验值 w1 w2 前端nvd3.js替换成echarts • 更强大易用的报表设计器 改造后的zeppelin报表设计器 字段 控制区 行列控制区 数据执行区 标记卡 控制区 图表辅助 设置区 1、图表参数设置 2、图内筛选器 3、图表辅助线 4、图表预警 4、图表坐标轴控制 5、图表图例显示控制 1、字段设置 2、添加计算字段 3、字段分组 1、多层钻取 2、双轴异图支持 3、高级计算:同比、环比0 码力 | 41 页 | 3.21 MB | 1 年前3
声明式自愈系统——高可用分布式系统的设计之道-王昕台基础管理系统和云原生自动运维系统的构建。在国内外有10多项授权和在审软件技术 发明专利,并多次受邀出席技术会议,做技术专题分享。 目录 Ø 分布式系统面临的高可用问题 Ø 设计和验证高可用分布式系统的工具与方法 Ø 设计和验证高可用分布式系统的案例分享 Ø 高可用系统的最佳实践总结 无状态分布式系统的高可用问题 处理消息的服务节点可以随机选择 不必处理数据复制和同步的问题 系统容量和高可用能力可以同步提升 good will eventually happen •e.g. is able to receive message 目录 Ø 分布式系统面临的高可用问题 Ø 设计和验证高可用分布式系统的工具与方法 Ø 设计和验证高可用分布式系统的案例分享 Ø 高可用系统的最佳实践总结 依据声明式自愈的理念设计系统 有一个统一的状 态持久化接口, 所有有状态模块 通过统一的接口 对应统一的对象 模型 Can Help Us! Ø TLA+ 是用来给(软件或硬件)系统建模的语言 Ø TLA+ 强调排除特定编程语言(软件或硬件)的影响验证系 统设计 Ø TLA+ 由 Paxos 协议的发明人 Leslie Lamport 发明 使用 TLA+ 定义和验证系统设计 Why TLA+ For quite a while, I’ve been disturbed by the emphasis0 码力 | 44 页 | 2.47 MB | 1 年前3
大规模分布式系统架构下调测能力构建之道提供者A 服务容器 服务注册中心 服务列表 …… 无需注册中心 不需要服务消费者注册,直接通过本地配置文件指定的IP地址来绕过“服务路由”及“负载均衡”机制。 服务提供者不能采用token验证模式 基于包名过滤服务 团队往往开发某类业务服务,这类服务一般都具有相同的包名,因此,可以通过配置包名和服务IP的映射关系, 让服务框架自动将一批服务和特定的IP关联到一起。 直连调测机制 通过将契约测试集成到CI流程中,在构建的过程中完成接口的联调测试,和 接口变动的验证测试,从而实现对接口变动的及时感知。 Consumer 报告 Provider Consumer 报告 Provider request response 导出 回放 Step1:定义服务调用方的期望 Step2:在服务提供方进行验证 接口 验证程序 Mock文件 配置文件: 服务地址 校验接口清单0 码力 | 19 页 | 2.74 MB | 1 年前3
领域驱动设计&中台/可视化的遗留系统微服务改造事件⻛风暴暴⼯工作坊 - Event Storming是⼀一种领域建模的实践,是⼀一种快速 探索复杂业务领域的⽅方法: - 最初由Alberto Brandolini 开发,经过DDD社区和 TW的很多团队实践验证后,于2015年年11⽉月进⼊入 ThoughtWorks技术雷雷达 ‣Powerful:可以让实践者在数⼩小时内理理解复杂的业务 模型 ‣Engaging:把带着问题的⼈人和拥有答案的⼈人共聚⼀一 如果⼀一个事件有同步发⽣生的其它事件,把其它 事件放在事件下⽅方; 5. 如果发现了了业务中的问题点,⽤用红⾊色便便利利贴记 录为什什么是⼀一个问题; 6.以上步骤完成以后,再从最后⼀一个事件开始来 反向验证事件的完整性(即:⾛走查前后事件的关 联关系,防⽌止有些事件被遗漏漏)。 通过事件的⽅方式对过去发⽣生的事情进⾏行行溯源, 因为过去所发⽣生的对业务有意义的信息都会 通过某种形式保存下来。事件⻛风暴暴能够让领 已可视化 遗留留系统拆解给⻜飞⾏行行中的⻜飞机换引擎 友谊第⼀一 ⽐比赛第⼆二 降⻰龙⼋八步第⼀一式 ⽤用户 订单 商品 第⼀一式: 1. 明确要拆解的服务所涉及 的模块 2. 验证之前代码依赖分析和 数据库分析的结果 3. 约定“同⼀一类型数据只有⼀一 处修改”,以数据为中⼼心提 ⾼高内聚性,同时避免写冲 突的出现 遗留留系统 降⻰龙⼋八步第⼆二式 ⽤用户 订单0 码力 | 54 页 | 3.85 MB | 1 年前3
海量用户推送后台系统架构实践-曾振波极光推送后台系统架构 09 结束语 • 高性能/低成本、高可用、高运维 • 只用验证过的开源组件 • 自研替代开源 • 能并行就不要串行 • 能异步就不要同步 • 保持简单,快速迭代 • 不要过早优化,架构是演进出来的 极光推送后台系统架构 结束语 • 高性能/低成本、高可用、高运维 • 只用验证过的开源组件 • 自研替代开源 • 能并行就不要串行 • 能异步就不要同步0 码力 | 23 页 | 1.26 MB | 1 年前3
分布式异地多活架构实践之路CRSync MQ Processor CRSync Web Service Web GSLB 用户分片&就近接入 用户分片&就近接入 DisFS 用户路由 用户路由 会话验证 会话验证 专线/公网 漫游 汇聚模式 从机房 主机房 Service Flume CRSync CRSync Service GSLB 就近接入 就近接入 Flume Flume0 码力 | 36 页 | 1.66 MB | 1 年前3
领域驱动设计&中台/架构分层模型适配DDD分层架构治理理 HTTP⽅方法: POST GET PUT DELETE 前端应⽤用 API服务 业务领域 基础设施 业务操作: 注册 注销 登录 退出 修改 撤销 查看 查询 验证码 激活 存储动作: INSERT UPDATE DELETE 动词翻译映射 create retrieve update delete save find DDD分层架构治理理 前端应⽤用 架构治理理中的踢正步 ⽤用户账户注册和激活 案例例-⽤用户注册和激活 填写注册信息 HTTP POST 注册信息 处理理注册信息 保存注册信息 发送注册激活码 填写激活码 HTTP POST 激活码 验证激活码 保存激活信息 案例例-⽤用户注册 -1 前端应⽤用 API服务 业务领域 基础设施 POST /users0 码力 | 39 页 | 2.54 MB | 1 年前3
QCon北京2018-《美团配送系统架构演进实践》-阴永俊打磨各类位置与导航策略场景 导航 算法特征 效果验证 产品技术创新驱动业务发展 精细化阶段:仿真平台 目标:构建线下模拟沙盘 思路:基于线上真实数据对配送全流程构建模拟场景,并对事件、数据模拟 仿真报告可视化 产品技术创新驱动业务发展 精细化阶段:特征平台 版本管理:缩短实验周期,灵活配置实验规则 实时特征:特征准实时加工、离线特征实时转化 离线特征:特征快速开发、验证、上线能力 场景 产品技术创新驱动业务发展0 码力 | 31 页 | 15.26 MB | 1 年前3
微服务和Service Mesh 在多个行业落地实践流量 镜像 维护 开关 API 监控 认证 鉴权 治理 文档 报表 微服务框架 (服务治理) 服务 目录 注册 发现 限流 熔断 降级 容错 路由 负载 均衡 参数 分流 拓扑 依赖 配置 中心 服务 监控 服务 告警 认证 鉴权 统计 概览 知识 库 APM (应用运行期监控) 运行时 拓扑 性能 监控 服务 筛选 开发测试环境自动部署,生产 环境手动触发 持续集成 www.163yun.com 微服务框架 (服务治理) 服务 目录 注册 发现 限流 熔断 降级 容错 路由 负载 均衡 参数 分流 拓扑 依赖 配置 中心 服务 监控 服务 告警 认证 鉴权 统计 概览 知识 库 服务 告警 监控 大屏 账户 审计 注册,发现,调用都提供鉴权 熔断 降级 容错 路由 负载 均衡 参数 分流 拓扑 依赖 配置 中心 服务 监控 服务 告警 认证 鉴权 统计 概览 知识 库 服务 告警 监控 大屏 账户 审计 粒度更细:可指定服务版本,类,方法级别 配置灵活:可配置检测粒度为每M毫秒N个请求P%的错误率 指标多样:RT值,错误率,线程池参数 熔断 粒度更细:可指定调用者和被调用0 码力 | 39 页 | 3.06 MB | 1 年前3
共 17 条
- 1
- 2













