二维火| 点餐小程序用餐高峰保障实践【餐饮案例】

客户介绍

二维火目前已服务超数十万家餐饮门店,扫码点餐小程序可以帮助门店用户通过手机扫码自助完成点餐、下单、付款等动作,实现无纸化操作,大大节省门店人力成本。

建设背景

随着扫码点餐技术的推广,二维火小程序在用餐高峰期需要承载每秒数以万计的用户流量,这对系统的稳定性提出了非常高的要求,如何保障系统高可用以及广大消费者的用户体验,同时有效降低企业运营成本是二维火现阶段安全生产的具体目标。 为了实现这个目标,二维火引入了生产全链路压测技术进行有效的容量规划,并形成了标准化的压测流程,实现小程序系统0故障,保障千万级用户的实际体验。

解决方案

功能和架构

将生产压测平台独立于业务系统之外,只需要在应用系统集群中接入JavaAgent探针就能实现生产数据于压测数据的安全隔离,避免压测影响业务系统。业务系统无需额外的改造,而链路梳理、链路监控、生产发压、压测监控、压测报告的生成工作全部由成熟的压测平台来完成,减少大量的人工操作,有效提升整体的压测效率和效果。

方案描述

二维火目前1300台服务器左右,所有应用600多个,一级应用168个,JAVA应用347个,目前通过ECS和SAE搭配,通过SAE的动态扩缩容机制来满足日常业务的周期性高峰低谷。为了摆脱链路梳理、链路监控、问题定位等工作过度依赖人工,单接口单场景压测结果不精准导致容量评估困难、大型活动保障效果不佳的现状,引入成熟的全链路压测技术,采取公网发压的形式来进行二维火业务系统性能的相关验证。
(1)明确压测策略,保障压测开展
基于业务高峰期比较特殊,我们将压测时间定在周一到周四14:00-16:00。具体的压测方式是采用梯度增压的方式来进行疲劳测试,选取1000个会员、800+家店铺,每个店铺下有100个桌位号来模拟真实客户扫码点餐动作,分为4个梯度逐渐加压,观察各应用、redis、数据库、es集群等负载和MQ是否有堆积情况。 压测工作细化到具体的事项、准备完成时间以及对应的责任的owner,以此确保在压测过程中一旦出现问题的话能够及时的找到问题的责任人,确保压测过程的顺利推进。
(2)标准化过程管控,提升压测效率
由于业务的特殊性,每次压测都是时间紧任务重,为了保证在业务的低峰期完成生产压测,我们将许多压测工作标准化流程化,以确保能压测能够高效开展。 压测前发起产品使用保障流程以及变更,指定责任;压测中同步汇报压测情况,观察性能指标;压测后及时了解压测情况并进行复盘总结。按照这样的标准流程进行压测,单轮压测的时间能从1个月缩减到1周,极大地提升了压测效率。
(3)定位具体问题,快速优化性能
压测过程时时有链路监控,透过链路监控的耗时数据就能快速定位到有问题的应用以及接口,在下一轮的压测中使用压测平台中的链路耗时追踪功能就能定位到具体的问题节点,根据压测结果进行性能调优,再通过压测来验证调优的效果,快速有效地解决性能问题。
(4)合理容量规划,有效缩减硬件成本
针对核心链路进行3轮生产环境压测,并根据压测情况的汇总、实际的业务高峰期的数据,提出了具体到应用的服务器资源优化建议。40+应用中6个应用存在容量冗余的情况,可以进行服务器缩容处理,初步估计每年可以降低近百万的硬件成本投入。

客户收益

应用经济效益

通过生产压测进行有效的容量评估,每年起码能节省近百万的硬件成本,同时提前发现优化系统性能问题,也能避免影响用户的扫码点餐使用体验,尤其是在情人节、圣诞节、元旦节等大型节假日的高峰用餐时段,保障业务的平稳运行。

产业联动效应

餐饮企业的数字化转型势在必行,用户点餐、后厨管理、收银体系等工作的线上化都是转型中的一环,每个环节都影响着餐饮业务的发展。压测是系统稳定性保障的有效手段,现在是与实际用户联系最紧密的点餐业务接入压测,保障高峰流量下的平稳运营,后续其他相关业务的稳定性保障也会逐步提上日程,压测可以有效助推餐饮行业的数字化转型。

社会效益

衣食住行是生活的基本要素,餐饮行业的数字化给人民生活带来的便捷是公认的,随着业务数字化的深入,食品的生产、管理、运输等均实现数字化管理,形成相关的产业链,将有效降低食物的损耗与浪费。
如果你对该案例感兴趣,欢迎扫描下方二维码
立即咨询和体验
二维火| 点餐小程序用餐高峰保障实践【餐饮案例】

本文来自投稿,不代表TakinTalks稳定性技术交流平台立场,如若转载,请联系原作者。

(0)
上一篇 2023年1月3日 下午3:58
下一篇 2023年2月17日 下午3:17

相关推荐

发表评论

登录后才能评论