云原生架构案例分析_4.某电商业务云原生改造

        名称解释:

        AHAS应用高可用服务(Application High Availability Service)是一款专注于提高应用高可用能力的SaaS产品,主要包含多活容灾、故障演练和流量防护三个独立的功能模块。其中流量防护已迁移至微服务治理服务MSE。

        PTS:性能测试PTS(Performance Testing Service)是一款简单易用,具备强大的分布式压测能力的SaaS压测平台。 PTS可以模拟复杂的业务场景,并快速精准地调度不同规模的流量,同时提供压测过程中多维度的监控指标和日志记录。您无需准备资源,即可按需发起压测任务,监控压测指标,获取压测报告,进而能够高效率、全方位地验证业务站点的性能、容量和稳定性。

       ARMS 应用实时监控服务(Application Real-Time Monitoring Service)作为一款云原生可观测产品平台,包含应用监控、前端监控、Prometheus监控、云拨测、Grafana服务、告警管理等一系列子产品。其覆盖浏览器、小程序、APP、分布式应用、容器等不同可观测环境与场景,帮助企业实现全栈性能监控与端到端追踪诊断。提高监控效率,减少运维工作量。

1.背景和挑战

        某是一家致力于线上的化妆品销售品牌。伴随着公司业务高速发展,技术运维面临着非常严峻的挑战。伴随着“双11”电商大促、“双12”购物节、小程序、网红直播带货呈现爆发式增长趋势,如何确保微商场系统稳定顺畅地运行成为某面对的首要难题。其中,比较突出几个挑战包含以下几点:

  • 系统开发迭代快,线上问题较多,定位问题耗时较长;
  • 频繁大促,系统稳定性保障压力很大,第三方接口和一些慢SQL存在导致严重线上故障的风险;
  • 压测与系统容量评估工作相对频繁,缺乏常态化机制支撑;
  • 系统大促所需资源与日常资源相差较大,需要频繁扩缩容。

2.云原生解决方案

        某与阿里云一起针对缩面临问题以及未来业务规划进行了深度沟通与研讨。通过阿里云原生应用稳定性解决方案以解决业务问题。引入阿里云容器服务ACK、Spring Cloud Alibaba、PTS、AHAS、链路追踪等配套产品,对应用进行容器化改造部署,优化配套的测试、容量评估、扩缩容等研发环节,提升产研效率。图1展示了某最终的核心应用架构方案。

图1 某核心应用架构示意图 

3.应用效益

        高可用:利用应用高可用服务产品(AHAS)的限流降级和系统防护功能,对系统关键资源进行防护,并对整体系统水位进行兜底,确保大促平稳进行,确保顺畅的用户体验。

        容量评估:利用性能测试服务(PTS)和业务实时监控(ARMS)对系统单机能力及整体容量进行评估,对单机及整体所能承载的业务极限量进行提前研判,以确保未来对业务大促需求可以做出合理的资源规划和成本预测。

        大促保障机制:通过与阿里云服务团队的多次配合演练,建立大促保障标准流程及应急机制,达到大促保障常态化。 

4.客户声音

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

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/diannao/22433.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Java - Path接口和Files工具类

在Java中,Path接口和Files工具类是Java 7中引入的java.nio.file包的一部分,用于文件和文件系统的操作。这些API提供了比传统的java.io包更为强大和灵活的文件处理功能。 Path接口 Path接口表示文件系统中的路径,它可以是文件名或目录名。Pa…

再度“冲三”失利的泸州老窖,还能拿出什么“杀手锏”?

正值“618”,白酒行业也迎来了重要创收时刻。 据悉,天猫“618购物节”开卖首日,酒水直播销售额增长超1300%,拉动白酒行业增长147%。 这一增长背后,赛道的火药味也愈发浓厚,今年618大促中,五粮…

第十周:目标计划管理

1. 企业的目的 企业不同时期的目标是不一样的,第一阶段是保证存活;第二阶段是为了发展,加强公司业绩,达到预期的盈利;第三阶段是在发展壮大之后,有更多精力投入公司健康运转的事情,保证长久的生…

Flutter 中的 DefaultTextStyle 小部件:全面指南

Flutter 中的 DefaultTextStyle 小部件:全面指南 Flutter 是一个由 Google 开发的跨平台 UI 框架,它提供了丰富的组件来帮助开发者构建高性能、美观的应用。在 Flutter 的布局体系中,DefaultTextStyle 是一个重要的组件,它允许开…

【电路笔记】-Sallen-Key滤波器

Sallen-Key滤波器 Sallen-Key 滤波器拓扑用作实现高阶有源滤波器的构建块。 1、概述 Sallen-Key 滤波器设计是一种二阶有源滤波器拓扑,我们可以将其用作实现高阶滤波器电路的基本构建块,例如低通 (LPF)、高通 (HPF) 和带通 ( BPF)滤波器电路。 正如我们在本滤波器部分中…

<读评论……?>

为纪念今天数学比赛AK 回复一下比较常见的问题! Q1:平常写代码时使用万能头文件好还是一个一个慢慢写好? A:我其实个人认为万能头好,这样比较省时 Q2:有很多书上写int main()可以去掉int, 这是真的吗&#…

【匹配线段问题】

问题: 如下图所示。图中有两行正整数,每行中有若干个正整数。如果第一行的某个数r与第二行的某个数相同,这样就可以在这两个正整数之间划一条线,并称之为r-匹配线段。下图中存在3-匹配线段和2-匹配线段。 请编写完整程序&#xf…

【C语言】详解函数(庖丁解牛版)

文章目录 1. 前言2. 函数的概念3.库函数3.1 标准库和头文件3.2 库函数的使用3.2.1 头文件的包含3.2.2 实践 4. 自定义函数4.1 自定义函数的语法形式4.2 函数的举例 5. 形参和实参5.1 实参5.2 形参5.3 实参和形参的关系 6. return 语句6. 总结 1. 前言 一讲到函数这块&#xff…

Flutter 中的 CupertinoUserInterfaceLevel 小部件:全面指南

Flutter 中的 CupertinoUserInterfaceLevel 小部件:全面指南 Flutter 是一个功能强大的 UI 框架,由 Google 开发,允许开发者使用 Dart 语言构建跨平台的移动、Web 和桌面应用。在 Flutter 的 Cupertino(iOS 风格)组件…

数字塔问题

#include<iostream> using namespace std; //从下向上得到最优值 void dtower(int a[][100],int s[][100],int n) {for(int in; i>1; i--){for(int j1; j<i; j){if(in)s[i][j]a[i][j];else{int ts[i1][j];if(t<s[i1][j1])ts[i1][j1];s[i][j]a[i][j]t;}}} } void…

物理机装入Kali避坑指南

前言 只对容易出错的地方做详细说明&#xff0c;目的在物理机上配置kali 配置网络 eth0: Realtek Semiconductor Co., Ltd. RTL8111/8168/8411 PCI Express Gigabit Ethernet Controller 这是一个有线网络接口&#xff0c;通过以太网电缆连接到网络。wlan0: Intel Corporatio…

架构每日一学 15:想要提升协作效率,必须先统一语义

谭sir与二仙桥大爷的经典对话&#xff1a; 谭sir&#xff1a;你该走哪&#xff1f;&#xff08;非机动车能走机动车道吗&#xff1f;&#xff09; 大爷&#xff1a;走二仙桥去成华大道&#xff08;因为我要去成华大道&#xff0c;当然要走二仙桥&#xff09; 谭sir&#xff1a;…

Redis的数据结构以及对应的使用场景

Redis支持的数据结构包括字符串(String)、列表(List)、哈希(Hash)、集合(Set)、有序集合(Sorted Set)等。这些数据结构在应用开发中扮演着重要的角色&#xff0c;它们各自适用于不同的使用场景和需求。以下是对Redis各数据结构的详细分析及它们的使用场景&#xff1a; 字符串(S…

前端地图中,已知一个点位,获取相同经度或者纬度下的,某个距离的另一个点位

效果图说明&#xff1a;我在圆的中心点位&#xff0c;找到他某个直线距离的另个一点&#xff0c;标注两者之间的距离。如图所示是25000米。 沿纬度方向移动 在相同经度下&#xff0c;计算沿纬度方向移动1000米的新点位&#xff1a; function calculateLatitudePoint(lat, ln…

10-Django项目--Ajax请求

目录 Ajax请求 简单示范 html 数据添加 py文件 html文件 demo_list.html Ajax_data.py 图例 Ajax请求 简单示范 html <input type"button" id"button-one" class"btn btn-success" value"点我"> ​ ​ <script>/…

如何找出你的Windows 10的内部版本和版本号?这里提供两种方法

你过去可能没有真正考虑过Windows内部版本号,除非这是你工作的一部分。以下是如何了解你运行的Windows 10的内部版本、版本和版本号。 内部版本意味着什么 Windows一直使用内部版本。它们代表着对Windows的重大更新。传统上,大多数人都是根据他们使用的主要命名版本(Windo…

使用raise语句抛出异常

自学python如何成为大佬(目录):https://blog.csdn.net/weixin_67859959/article/details/139049996?spm1001.2014.3001.5501 如果某个函数或方法可能会产生异常&#xff0c;但不想在当前函数或方法中处理这个异常&#xff0c;则可以使用raise语句在函数或方法中抛出异常。rai…

学习DHCP动态主机配置协议

目录&#xff1a; dhcp 动态主机配置协议 ftp文件传输协议 dhcp 动态主机配置协议 服务器配置好了地址池 192.168.124.10 -192.168.124.20 客户端从地址池当中随机获取一个ip地址&#xff0c;ip地址会发生变化&#xff0c;使用服务端提供的ip地址&…

与C共舞:让编译更顺滑(2)

1.6 Packed结构体 默认情况下,Zig中的所有结构体字段自然对齐到@alignOf(FieldType)(ABI大小),但没有定义布局。有时,您可能希望具有不符合您的C ABI的定义布局的结构体字段。packed结构体允许您对结构体字段进行极其精确的控制,允许您逐位放置字段。 在packed结构体内…

【MATLAB】概述1

非 ~ 注释 % 定义 >> 数组 赋值 赋值&#xff1a;>> x1 函数 数组 x[x1,x2] 行向量&#xff08;&#xff0c;or ) x[x1;x2] 列向量 x. 转置等间隔向量 1-10 向量&#xff1a;>>xlinspace(1,10,10) 矩阵 矩阵&#xff1a;>>A[1,2,3;4,5,6;7,8,9] …