当前位置:首页 > 报告详情

4-PPT版《基于模式挖掘的可靠性治理探索》孙玉鑫.pdf

上传人: 2*** 编号:135198 2023-07-09 41页 14.27MB

1、基于模式挖掘的可靠性治理探索美团优选事业部自我介绍孙玉鑫,2018年加入美团专注于服务端质量保障和效率提升,在自动化建设、稳定性治理等方向积累了较多经验1.可靠性治理的痛点2.什么是模式3.大数据下的尝试4.典型实践分享目录为什么要做可靠性治理安全性和可靠性都是信息系统的固有属性,却很容易成为换取更快交付速度的代价,而事后则需要高昂的修复成本。对照Google可靠性七层模型,我们日常在设计和开发阶段的可靠性相关投入较低。而这一阶段积累的问题,需要在后续的容量规划、测试、发布、复盘、应急和监控等多个环节投入更高成本来发现。基于这个现状,我们需要找到低成本且有效的方式来发现和治理这些问题。可靠性治

2、理的挑战面向弹性的设计幂等性、健壮性、一致性面向失败的设计超时、限流、熔断面向变化的设计容量规划、容量验证模糊度模糊度最常见的两种情况Overfitting:很多时候我们只能Case By Case的处理单点问题,无法解决潜在的同类问题。例如一个接口存在幂等性问题,那么我们可以很快修复问题,并添加幂等性相关的用例。但还有哪些接口有问题是无法穷举的Underfitting:我们清楚知道某一类问题需要被关注,但不能确定具体的解法。例如主从延迟会带来一致性风险,我们会强调相关验证的重要性,并制定规范,但由于没有确定的规则,并不能保证这一类风险得到控制 1.可靠性治理的痛点2.什么是模式3.大数据下的

3、尝试4.典型实践分享目录模式的定义维基百科中的定义:A pattern is a regularity in the world,in human-made design,or in abstract ideas模式揭示了这个世界上,人工设计和抽象思想中的规律。1904年,瑞典数学家柯赫构造了“Koch曲线”几何图形软件工程中的模式1991年Erich Gamma获得博士学位后去了美国,在那与Richard Helm,Ralph Johnson、John Vlissides合作出版了Design Patterns-Elements of Reusable Object-Oriented Sof

4、tware 一书。在此书中共收录了23个设计模式。这四位作者在软件开发领域里也以他们的匿名著称Gang of Four(简称GoF),并且是他们在此书中的协作导致了软件设计模式的突破。软件工程中的模式2017年,微软AzureCAT模式和实践团队在Azure 架构中心发布了9个新的微服务设计模式,并给出了这些模式解决的问题、方案、使用场景、实现考量等。外交官模式(Ambassador)防腐层防损层(Anti-corruption layer)后端服务前端(Backends for Frontends)舱壁模式(Bulkhead)网关聚合(Gateway Aggregation)挎斗模式(Sid

5、ecar)技术场景中的模式Cache-Aside(Lazy Loading)Write-Through如何找到这些模式业务数据、用例积累、专业知识、故障复盘等,都是有效的输入,其中来自真实用户行为的海量业务数据蕴含巨大的潜力。1.可靠性治理的痛点2.什么是模式3.大数据下的尝试4.典型实践分享目录流量采集技术的成熟随着JVM非侵入式运行期AOP解决方案的成熟,我们可以进行任意环境下各种协议流量和依赖数据的采集。也可以在测试环境回放线上的真实业务流量。环境隔离技术的发展依托分布式弹性块存储服务,测试数据隔离已经具备一站式解决方案,如存储编排快速构建和销毁、存储编排管理、数据隔离与自动路由、数据同

6、步/导入等,业务在使用时只需做简单的配置即可做到测试环境数据“即拿即用”。自动化测试还有哪些可能流量采集和环境隔离的能力,给自动化测试带来了新的可能,也让可靠性治理有了新的思路。流量采集请求参数返回值调用链路.环境隔离数据隔离服务隔离消息隔离RPC隔离.规则(接口用例)模式模型(场景用例)业务测试可以结合代码逻辑和业务模型,进行功能覆盖。但可靠性治理不同,我们需要识别技术选型,挖掘潜在模式,面向不同业务解决一类问题。相较于规则测试有更高的模糊度挑战,相较于模型测试有更高的通用性要求。为什么是模式模型模式规则 变更识别 功能覆盖 幂等测试 健壮性测试 接口测试 Diff测试 1.可靠性治理的痛点

word格式文档无特别注明外均可编辑修改,预览文件经过压缩,下载原文更清晰!
三个皮匠报告文库所有资源均是客户上传分享,仅供网友学习交流,未经上传用户书面授权,请勿作商用。
本文主要介绍了美团优选事业部在可靠性治理方面的探索和实践。主要内容包括: 1. 可靠性治理的痛点:信息系统的安全性和可靠性往往成为换取更快交付速度的代价,且问题修复成本高昂。 2. 什么是模式:模式是一种规律,存在于数学、设计、软件工程等多个领域。在软件工程中,模式指的是在软件设计和开发中解决问题的标准方法。 3. 大数据下的尝试:基于海量业务数据和用例积累,结合专业知识,挖掘潜在的模式,以实现自动化测试和可靠性治理。 4. 典型实践分享:包括幂等性治理、依赖治理和越权治理等方面的实践,如通过构造故障场景验证依赖分级和熔断策略的有效性,通过身份认证和数据权限验证防止越权访问等。 5. 成果展示:已覆盖500+服务、20000+接口、8000+下游依赖,发现1000+问题,实现了低成本、自动化的可靠性治理。 6. 未来展望:构建更丰富的可靠性治理场景,迭代流量分析和模式挖掘的底层能力,为业界提供通用的基础设施。
"幂等性治理如何降低系统风险?" "依赖治理如何确保微服务的高可用性?" "越权治理如何提升Web应用的安全性?"
客服
商务合作
小程序
服务号
折叠