亿级流量架构理论+秒杀实战系列(一)

简介: 亿级流量架构理论+秒杀实战系列(一)

业务架构

功能分离:为什么要进行功能分离:确保核心功能的高并发和高可用

按照功能的重要程度:划分为核心功能和非核心功能

例如:在亿级规模的用户中台系统中,假设有注册,登录,用户信息,日志,行为分析等功能。问题是:哪一个更重要?

例如:在用户中台系统中,对于一个亿级用户,日活2000万的业务来说,平均每天注册用户是10万左右,假设2年之后,用户的修改信息可能还不到1万,但登录的功能是2000万,很明显我们应该保证登录的才是核心。登录是核心功能,注册,用户信息是非核心功能,登录功能一旦有问题,其他的业务系统,就不能登陆了,非核心业务功能即使有问题,暂时也不会立刻影响业务系统的使用。因此,优先保证核心功能正常,是我们首先的目标。

其次要核心功能和非核心功能,有不同的对应策略:

隔离策略,重试策略,功能降级策略

按照功能的流量特点:

在秒杀系统中,这里需要区分,可以分为流量突发型,流量平缓型的功能和突发流量的功能做好隔离。

电商平台:秒杀功能,电商功能

流量突发,流量平缓型的应对策略:

首先做好隔离策略,另外,对突发流量的做好独立的伸缩扩展策略。

功能分离之后的应对:

功能隔离

如何隔离:

1、单独的域名,单独的接入层、隔离的服务层、单独的缓存,单独的数据库

域名隔离、 代理隔离、微服务隔离、缓存隔离、数据库隔离

2、只要核心功能和非核心功能存在共享的资源,就有可能因为非核心功能影响核心功能。举个最简单的例子,如果数据库共用一套,那么非核心功能如果出现了大量的整表查询(慢sql),核 心功能同样受到影响。

3、只要流量突发型、流量平缓型功能存在共享的资源,就有可能影响流量平缓型功能。

4、假设:核心功能、非核心功能共享了缓存服务器,就可能会由于非核心功能的操作影响了缓存的性能, 甚至出现问题.

解决方案:缓存物理隔离后,就更加保证了核心功能的安全,

功能降级:

1、当出现故障的时候,当出现瓶颈的时候,可以将非核心功能直接降级,保护核心功能不受影响

2、拆分为核心功能和非核心功能后,虽然物理上两者隔离了,但有的业务还是需要核心功能和非核心功能 配合才能完成,这就存在了一定的风险。

3、比如说大量用户登录时,可以停止行为分析、登录日志等非核心功能。以保证核心功能不受影响。

降级的实现方式通常有手动和自动

1、自动方式是程序调用发生问题时,自动降级,如调用某服务时,响应时间超过预订阀值,自动降级 微服务的熔断,就属于自动降级

2、动方式是使用配置中心,对系统中可降级的服务都设置好开关项,当需要降级时,在配置中心中进行 操作,配置中心进行下发变更通知

3、可以开发了一个后台运维管理程序,当需要停用某个功能的时候,只需要在后台上点击一个按钮就能够完成,花费时间只需要几秒钟。

015474450e1c7af12c6f25abb1bd5b86.png

相关文章
|
8天前
|
弹性计算 人工智能 架构师
阿里云携手Altair共拓云上工业仿真新机遇
2024年9月12日,「2024 Altair 技术大会杭州站」成功召开,阿里云弹性计算产品运营与生态负责人何川,与Altair中国技术总监赵阳在会上联合发布了最新的“云上CAE一体机”。
阿里云携手Altair共拓云上工业仿真新机遇
|
4天前
|
机器学习/深度学习 算法 大数据
【BetterBench博士】2024 “华为杯”第二十一届中国研究生数学建模竞赛 选题分析
2024“华为杯”数学建模竞赛,对ABCDEF每个题进行详细的分析,涵盖风电场功率优化、WLAN网络吞吐量、磁性元件损耗建模、地理环境问题、高速公路应急车道启用和X射线脉冲星建模等多领域问题,解析了问题类型、专业和技能的需要。
2463 14
【BetterBench博士】2024 “华为杯”第二十一届中国研究生数学建模竞赛 选题分析
|
4天前
|
机器学习/深度学习 算法 数据可视化
【BetterBench博士】2024年中国研究生数学建模竞赛 C题:数据驱动下磁性元件的磁芯损耗建模 问题分析、数学模型、python 代码
2024年中国研究生数学建模竞赛C题聚焦磁性元件磁芯损耗建模。题目背景介绍了电能变换技术的发展与应用,强调磁性元件在功率变换器中的重要性。磁芯损耗受多种因素影响,现有模型难以精确预测。题目要求通过数据分析建立高精度磁芯损耗模型。具体任务包括励磁波形分类、修正斯坦麦茨方程、分析影响因素、构建预测模型及优化设计条件。涉及数据预处理、特征提取、机器学习及优化算法等技术。适合电气、材料、计算机等多个专业学生参与。
1502 14
【BetterBench博士】2024年中国研究生数学建模竞赛 C题:数据驱动下磁性元件的磁芯损耗建模 问题分析、数学模型、python 代码
|
1月前
|
运维 Cloud Native Devops
一线实战:运维人少,我们从 0 到 1 实践 DevOps 和云原生
上海经证科技有限公司为有效推进软件项目管理和开发工作,选择了阿里云云效作为 DevOps 解决方案。通过云效,实现了从 0 开始,到现在近百个微服务、数百条流水线与应用交付的全面覆盖,有效支撑了敏捷开发流程。
19274 29
|
1月前
|
人工智能 自然语言处理 搜索推荐
阿里云Elasticsearch AI搜索实践
本文介绍了阿里云 Elasticsearch 在AI 搜索方面的技术实践与探索。
18822 20
|
1月前
|
Rust Apache 对象存储
Apache Paimon V0.9最新进展
Apache Paimon V0.9 版本即将发布,此版本带来了多项新特性并解决了关键挑战。Paimon自2022年从Flink社区诞生以来迅速成长,已成为Apache顶级项目,并广泛应用于阿里集团内外的多家企业。
17515 13
Apache Paimon V0.9最新进展
|
6天前
|
编解码 JSON 自然语言处理
通义千问重磅开源Qwen2.5,性能超越Llama
击败Meta,阿里Qwen2.5再登全球开源大模型王座
365 11
|
1月前
|
存储 人工智能 前端开发
AI 网关零代码解决 AI 幻觉问题
本文主要介绍了 AI Agent 的背景,概念,探讨了 AI Agent 网关插件的使用方法,效果以及实现原理。
18697 16
|
2天前
|
算法 Java
JAVA并发编程系列(8)CountDownLatch核心原理
面试中的编程题目“模拟拼团”,我们通过使用CountDownLatch来实现多线程条件下的拼团逻辑。此外,深入解析了CountDownLatch的核心原理及其内部实现机制,特别是`await()`方法的具体工作流程。通过详细分析源码与内部结构,帮助读者更好地理解并发编程的关键概念。
|
2天前
|
SQL 监控 druid
Druid连接池学习
Druid学习笔记,使用Druid进行密码加密。参考文档:https://github.com/alibaba/druid
195 82