美团餐饮开放平台稳定性治理

如果无法正常显示,请先停止浏览器的去广告插件。
分享至:
1. 美团餐饮开放平台稳定性治理 美团点评餐饮生态事业部
2. 收银技术中心-餐饮生态架构师 2017年入职美团,一直负责美团餐饮开放平台 的技术工作,经历了餐饮开放平台从千万级流 量到亿级流量的过程。之前在华为、Veritas等 公司从事分布式系统的基础架构研发工作。
3. 目录 1、微服务下的美团餐饮开放平台 2、稳定性治理整体思路 3、技术手段 4、工程手段 5、总结
4. 餐饮开放平台业务介绍 线上 美团点评 餐饮开 放平台 消费者 商户 外部餐 饮软件 线下 为外部厂商赋能 帮助商家提升效率 提升消费者体验
5. 微服务下的开放平台 自身业务有三多: • 系统外部厂商多 • 内部业务服务多 • 内部组件依赖多 微服务环境下,系统的复杂度 上升: • 服务依赖关系 • 服务监控、日志、容灾
6. 目录 1、微服务下的美团餐饮开放平台 2、稳定性治理整体思路 3、技术手段 4、工程手段 5、总结
7. 稳定性指标 平台的可用性:平台按照预先定义好的服务等级协议SLA提供服务的可能性。 Availability = MTBF /(MTBF + MTTR) MTBF:平均无故障时间; MTTR:平均故障时间
8. 稳定性的手段 业务隔离 缓存 弱耦合 防御上游 容错下游 防御 性能 异步 全面监控 人 框架 高效路由 及时触达 快速定位 研发质量 集群、容错 跟踪染色 全链路巡检
9. 稳定性治理整体思路 公司级的稳定性保障: • 统一的WAF • 多机房容灾 • 高性能RPC框架 • 组件集群 • • • • • 服务间调用,同机房>同城>异地 服务调用组件,同机房>同城>异地 机房级切换 至少3机房部署 容量支持任一机房关闭 前面3个9靠公司
10. 稳定性治理整体思路 开放平台的稳定性特点 每日两次业务高峰 技术层面 1. 事前的稳定性设计:应对业务高 峰、自身三高设计、抵御上下游; 2. 事中的监控定位:及时发现问题、 快速通知定位; 3. 事后的及时止损:开关切换。 自身的三高要求 上下游的变化不可控 工程层面 1. 保证上线质量; 2. 全链路日常巡检。 剩下的需要靠自己
11. 目录 1、微服务下的美团餐饮开放平台 2、稳定性治理整体思路 3、技术手段 4、工程手段 5、总结
12. 微服务稳定的核心OCTO • • • • • 治理能力统一 高性能/易用 全方位的治理能力 通信框架统一 通信框架高性能 全链路压测平台 命名服务统一 通信框架轻量化 性能优化诊断平台 SET化架构支撑 数据治理 分布式链路追踪 稳定性保障平台 所有PaaS组件打通 监控预警 链路轨迹精细化 服务鉴权、加密 易用性平台建设 运营平台 测试工具可视化 链路级流量治理 多机房适当冗余; 不要设置过长的超时时间; 尽量避免重试; 对于批量接口,限制大小; 独立部署多套服务,响应不同优先级的业务。 跨地区容灾和扩展
13. 稳定性设计 业务高峰 异步削峰 业务降级 分库分表 自身三高 全链路IO异步化 组件高可用 隔离 防范上下游 限流、降级、熔断 超时重试 多级缓存 强依赖变弱依赖
14. 稳定性设计 业务高峰 异步削峰、业务降级、非核心操作低耦合 1. MQ消费频率 2. 备选功能切换:磁盘、MQ 3. 开关:直接抛弃
15. 稳定性设计 提升自身可用性 全链路IO异步化 • 对外Servlet3.0异步化 • 对内RPC异步化 • HttpClient异步化
16. 稳定性设计 提升自身可用性 多种缓存设计组合 1. 不变的数据,放本地缓存 2. 通过databus更新双缓存 3. 修改数据时,应用程序只读缓存,不写缓存
17. 稳定性设计 抵御上下游异常 熔断、限流、降级,历久弥新的三大招
18. 稳定性设计 抵御上下游异常 业务的主机隔离 功能的线程隔离 隔离
19. 稳定性设计 抵御上下游异常 超时与重试 1. 超时不合理,会导致请求响应慢,慢请求 累积导致连锁反应,甚至应用雪崩。 2. 重试次数太多会导致多倍请求流量,即模 拟了DDoS攻击,后果可能是灾难。读服务 天然适合重试,但写服务大多不能重试。 3. 重试机制应该和熔断、快速失败机制配 合。 链路的每一个点都要考虑超时与重试。 最重要的超时重试是网络的连接、读写设置。
20. 监控定位 系统性监控、及时的发现 业务 总流量 接入方流量 正常流量 参数解析失败 流量 Jetty 失败流量 组件 JVM 业务监控 依赖流量 OS(内存、磁盘、网络) 硬件 业务失败 接口总RT RT 依赖RT 下游调用失败 返回值解析失 败 限流流量
21. 监控定位 全链路跟踪、快速定位问题 监控定位四大平台 1. XMDLog日志中心 2. Mtrace分布式会话链跟踪 3. CAT统一业务监控 4. Falcon基础设施监控
22. 监控定位 基础设施 分布式链路跟踪 OS、硬件级 上下游链路的依赖分析 微观 宏观 Falcon MTrace XMDLog日志中心 CAT业务监控 具体一个问题的分析 主动上报+定时采样+告警通知 一些小建议: • 远程日志打过多消耗系统资源,建议 按需写日志。 • 支持远程修改日志级别,一键降级日 志输出方式,非常实用。 • 异常分支建议增加埋点。 • 关键指标使用秒级监控,提升故障发 现的时效性。 • 如果QPS较高,使用batch接口上 报。
23. 及时⽌损 预案 备选路径 重启 加机器 回退代码 触发补偿 灰度开关 根据业务经验积累保障工具 一键降级 机房切换
24. 目录 1、微服务下的美团餐饮开放平台 2、稳定性治理整体思路 3、技术手段 4、工程手段 5、总结
25. 工程手段 编码质量 上线质量 (流程制度规范) 测试/单链路压测 上线灰度/观测 机房/组件/应用 工程手段 故障演练 功能/报警/切换 压测 全链路巡检 容量规划 值班 定期梳理
26. 全链路压测 • 模拟线上真实流量 • 创建线上压测环境 • 压测过程的实时监控与过载保护
27. 目录 1、微服务下的美团餐饮开放平台 2、稳定性治理整体思路 3、技术手段 4、工程手段 5、总结
28. 总结 应对高峰 自身稳定 容错下游 防御上游 容灾切换 集群 监控定位 技术 工程 研发规范 日常巡检
29. 招聘: 餐饮生态研发岗位 邮箱: wangying49@meituan.com 更多技术干货 欢迎关注“美团技术团队”

Home - Wiki
Copyright © 2011-2024 iteam. Current version is 2.139.0. UTC+08:00, 2024-12-23 02:07
浙ICP备14020137号-1 $Map of visitor$