消息队列和应用工具产品体系-完美日记电商业务案例

本文涉及的产品
性能测试 PTS,5000VUM额度
服务治理 MSE Sentinel/OpenSergo,Agent数量 不受限
应用实时监控服务-用户体验监控,每月100OCU免费额度
简介: 消息队列和应用工具产品体系-完美日记电商业务案例

开发者学习笔记【阿里云云原生助理工程师认证(ACA)课程:消息队列和应用工具产品体系-完美日记电商业务案例】

课程地址:https://edu.aliyun.com/course/3112075/lesson/19055


消息队列和应用工具产品体系-完美日记电商业务案例

 

第二个案例来自年轻的时尚美妆品牌完美日记作为美妆界的璀璨新星,完美日记上线不到两年,即成为天猫彩妆销冠。
image.png

截至2020年4月,品牌SKO超过700个,全网粉丝用户量超过2500万,月曝光量10亿家。伴随着公司业务的高速发展,技术运维面临着非常严峻的挑战。近年来,双十一电销大促、双十二购物节、小程序网红直播带货等话题爆发式的增长,确保微商城系统稳定运行,已经成为公司技术人员面临的首要难题。

这个难题的突出挑战包括以下几点

第一,系统开发迭代快,线上版本问题多,定位问题耗时长。

第二,频繁大促系统的稳定性保障压力很大。由于第三方接口和谐服务内部慢收购的存在,突发线上故障的风险较高。

第三,压力测试和系统容量的评估工作频繁,需要常态化机制的支撑。

第四,大促时所需要的系统资源与日常需求相差较大,需要频繁且灵活的扩缩容。

这些问题也是当前电商企业所面临的常见困境。为了应对这些挑战,企业的业务应用和it系统架构都应该长远的规划和升级。

2019年8月,完美日记业务爆发后,开始与阿里云进行深度的合作。双方针对完美日记当前所面临的问题进行了深度的沟通,同时也对企业的技术规划展开了讨论。最终,完美日记决定借助阿里云云原生的应用,依靠其稳定成熟的解决方案应对企业的电商业务难题。通过引入阿里云服务ACK spring cloud、阿里巴巴PTS等配套的产品,完美日记对应用进行了容器化的改造和部署,并且使用阿里云的相关组件优化配套的测试容量评估、扩缩容等研发和运维的环节,实现了产研效率的大幅提升。

如下图所示,我们简单的介绍一下完美日记的核心应用架构。

image.png

第一,通过容器化部署,利用阿里云容器服务的快速弹性来应对大促时的资源快速扩容。

第二,提前接入链路,追踪产品,对分布式环境下的复杂调用进行跟踪,对异常服务进行定位,帮助技术人员在测试和生产中快速定位问题,并修复降低故障对业务的影响。

第三,使用阿里云性能测试服务PTS进行压测,利用秒级流量拉起真实地理位置、流量等功能。以最真实的互联网流量进行压测,确保业务上线后的稳定运行。

第四,采集压测数据解析系统的依赖关系和瓶颈,对关键业务接口、关键的第三方调用数据库慢调用系统整体负载进行限流保护。

第五,配合阿里云服务团队在大促前进行ECS RDS安全等产品的扩容链路,梳理缓存、连接池、预热监控大屏自助后端资源保障演练等,帮助大促平稳进行。

下面我们来看一下完美日记企业技术负责人对这次技术平台升级的反馈和评价。完美日记技术中台负责人说了,以下内容使用ACK容器服务,可以帮助我们快速拉起测试环境,利用PTS计时高并发流量压测确认系统水位,结合AMS监控诊断压测过程中的性能瓶颈。最后通过AHAS对突发流量和意外场景进行实时限流降级,加上阿里云团队的保驾护航,保证了我们每一次大促活动的系统稳定性和可用性。同时利用ACK容器的快速弹性扩缩,容节约服务器成本50%以上。

总体而言,阿里云帮助用户实现了三个核心诉求。
image.png

第一,成熟的服务高可用利用应用高可用服务产品的限流、降级和系统防护功能,对系统关键资源进行防护,对整体系统水位进行兜底,确保大促时系统的平稳运行,为用户提供流畅的购物体验。

第二,常态化机制的容量评估,利用性能测试服务和业务实时监控,对系统单机能力及整体容量进行评估。对系统承载的业务极限量进行提前研判,以确定针对大促活动可以做出来的合理的资源规划和成本预测。

第三,全方位的大促保障。通过与阿里云服务团队进行多次的配合演练。双方建立了大促保障标准流程及应急机制,实现了大促保障的常态化。

相关实践学习
通过性能测试PTS对云服务器ECS进行规格选择与性能压测
本文为您介绍如何利用性能测试PTS对云服务器ECS进行规格选择与性能压测。
相关文章
|
6月前
|
消息中间件 测试技术 RocketMQ
消息队列 MQ产品使用合集之在异步发送消息函数sendMessage()中出现了错误,错误代码为-3,该如何解决
消息队列(MQ)是一种用于异步通信和解耦的应用程序间消息传递的服务,广泛应用于分布式系统中。针对不同的MQ产品,如阿里云的RocketMQ、RabbitMQ等,它们在实现上述场景时可能会有不同的特性和优势,比如RocketMQ强调高吞吐量、低延迟和高可用性,适合大规模分布式系统;而RabbitMQ则以其灵活的路由规则和丰富的协议支持受到青睐。下面是一些常见的消息队列MQ产品的使用场景合集,这些场景涵盖了多种行业和业务需求。
|
6月前
|
消息中间件 监控 Oracle
消息队列 MQ产品使用合集之启动Namesrv节点时,遇到报错,该如何解决
消息队列(MQ)是一种用于异步通信和解耦的应用程序间消息传递的服务,广泛应用于分布式系统中。针对不同的MQ产品,如阿里云的RocketMQ、RabbitMQ等,它们在实现上述场景时可能会有不同的特性和优势,比如RocketMQ强调高吞吐量、低延迟和高可用性,适合大规模分布式系统;而RabbitMQ则以其灵活的路由规则和丰富的协议支持受到青睐。下面是一些常见的消息队列MQ产品的使用场景合集,这些场景涵盖了多种行业和业务需求。
|
6月前
|
消息中间件 Java RocketMQ
消息队列 MQ产品使用合集之当SpringBoot应用因网络不通而启动失败时,该如何解决
消息队列(MQ)是一种用于异步通信和解耦的应用程序间消息传递的服务,广泛应用于分布式系统中。针对不同的MQ产品,如阿里云的RocketMQ、RabbitMQ等,它们在实现上述场景时可能会有不同的特性和优势,比如RocketMQ强调高吞吐量、低延迟和高可用性,适合大规模分布式系统;而RabbitMQ则以其灵活的路由规则和丰富的协议支持受到青睐。下面是一些常见的消息队列MQ产品的使用场景合集,这些场景涵盖了多种行业和业务需求。
|
6月前
|
消息中间件 存储 Java
Java中的消息队列应用与性能优化
Java中的消息队列应用与性能优化
|
6月前
|
消息中间件 网络协议 JavaScript
消息队列 MQ产品使用合集之报错提示是"the internal error!",是什么原因导致的”
消息队列(MQ)是一种用于异步通信和解耦的应用程序间消息传递的服务,广泛应用于分布式系统中。针对不同的MQ产品,如阿里云的RocketMQ、RabbitMQ等,它们在实现上述场景时可能会有不同的特性和优势,比如RocketMQ强调高吞吐量、低延迟和高可用性,适合大规模分布式系统;而RabbitMQ则以其灵活的路由规则和丰富的协议支持受到青睐。下面是一些常见的消息队列MQ产品的使用场景合集,这些场景涵盖了多种行业和业务需求。
|
6月前
|
消息中间件 JavaScript RocketMQ
消息队列 MQ产品使用合集之是否支持任意时间延迟的消息
消息队列(MQ)是一种用于异步通信和解耦的应用程序间消息传递的服务,广泛应用于分布式系统中。针对不同的MQ产品,如阿里云的RocketMQ、RabbitMQ等,它们在实现上述场景时可能会有不同的特性和优势,比如RocketMQ强调高吞吐量、低延迟和高可用性,适合大规模分布式系统;而RabbitMQ则以其灵活的路由规则和丰富的协议支持受到青睐。下面是一些常见的消息队列MQ产品的使用场景合集,这些场景涵盖了多种行业和业务需求。
|
5月前
|
消息中间件 监控 Java
在Java应用中实现微服务间的消息队列通信
在Java应用中实现微服务间的消息队列通信
|
5月前
|
消息中间件 存储 Java
Java中的消息队列应用与性能优化
Java中的消息队列应用与性能优化
|
6月前
|
消息中间件 Java API
消息队列 MQ产品使用合集之遇到"No topic route info in name server for the topic"错误,该如何处理
消息队列(MQ)是一种用于异步通信和解耦的应用程序间消息传递的服务,广泛应用于分布式系统中。针对不同的MQ产品,如阿里云的RocketMQ、RabbitMQ等,它们在实现上述场景时可能会有不同的特性和优势,比如RocketMQ强调高吞吐量、低延迟和高可用性,适合大规模分布式系统;而RabbitMQ则以其灵活的路由规则和丰富的协议支持受到青睐。下面是一些常见的消息队列MQ产品的使用场景合集,这些场景涵盖了多种行业和业务需求。
|
6月前
|
消息中间件 Java Shell
消息队列 MQ产品使用合集之启动broker&proxy的时候会报错,该怎么办
消息队列(MQ)是一种用于异步通信和解耦的应用程序间消息传递的服务,广泛应用于分布式系统中。针对不同的MQ产品,如阿里云的RocketMQ、RabbitMQ等,它们在实现上述场景时可能会有不同的特性和优势,比如RocketMQ强调高吞吐量、低延迟和高可用性,适合大规模分布式系统;而RabbitMQ则以其灵活的路由规则和丰富的协议支持受到青睐。下面是一些常见的消息队列MQ产品的使用场景合集,这些场景涵盖了多种行业和业务需求。