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

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

业务架构

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

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

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

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

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

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

按照功能的流量特点:

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

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

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

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

功能分离之后的应对:

功能隔离

如何隔离:

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

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

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

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

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

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

功能降级:

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

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

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

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

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

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

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

015474450e1c7af12c6f25abb1bd5b86.png

相关文章
|
3月前
|
人工智能 监控 前端开发
支付宝 AI 出行助手高效研发指南:4 人团队的架构迁移与提效实战
支付宝「AI 出行助手」是一款集成公交、地铁、火车票、机票、打车等多项功能的智能出行产品。
560 21
支付宝 AI 出行助手高效研发指南:4 人团队的架构迁移与提效实战
|
3月前
|
监控 Java API
Spring Boot 3.2 结合 Spring Cloud 微服务架构实操指南 现代分布式应用系统构建实战教程
Spring Boot 3.2 + Spring Cloud 2023.0 微服务架构实践摘要 本文基于Spring Boot 3.2.5和Spring Cloud 2023.0.1最新稳定版本,演示现代微服务架构的构建过程。主要内容包括: 技术栈选择:采用Spring Cloud Netflix Eureka 4.1.0作为服务注册中心,Resilience4j 2.1.0替代Hystrix实现熔断机制,配合OpenFeign和Gateway等组件。 核心实操步骤: 搭建Eureka注册中心服务 构建商品
638 3
|
3月前
|
消息中间件 Java 数据库
Java 基于 DDD 分层架构实战从基础到精通最新实操全流程指南
本文详解基于Java的领域驱动设计(DDD)分层架构实战,结合Spring Boot 3.x、Spring Data JPA 3.x等最新技术栈,通过电商订单系统案例展示如何构建清晰、可维护的微服务架构。内容涵盖项目结构设计、各层实现细节及关键技术点,助力开发者掌握DDD在复杂业务系统中的应用。
587 0
|
1月前
|
Cloud Native Serverless API
微服务架构实战指南:从单体应用到云原生的蜕变之路
🌟蒋星熠Jaxonic,代码为舟的星际旅人。深耕微服务架构,擅以DDD拆分服务、构建高可用通信与治理体系。分享从单体到云原生的实战经验,探索技术演进的无限可能。
微服务架构实战指南:从单体应用到云原生的蜕变之路
|
1月前
|
监控 Cloud Native Java
Spring Boot 3.x 微服务架构实战指南
🌟蒋星熠Jaxonic,技术宇宙中的星际旅人。深耕Spring Boot 3.x与微服务架构,探索云原生、性能优化与高可用系统设计。以代码为笔,在二进制星河中谱写极客诗篇。关注我,共赴技术星辰大海!(238字)
Spring Boot 3.x 微服务架构实战指南
|
2月前
|
消息中间件 数据采集 NoSQL
秒级行情推送系统实战:从触发、采集到入库的端到端架构
本文设计了一套秒级实时行情推送系统,涵盖触发、采集、缓冲、入库与推送五层架构,结合动态代理IP、Kafka/Redis缓冲及WebSocket推送,实现金融数据低延迟、高并发处理,适用于股票、数字货币等实时行情场景。
256 3
秒级行情推送系统实战:从触发、采集到入库的端到端架构
|
2月前
|
设计模式 人工智能 API
AI智能体开发实战:17种核心架构模式详解与Python代码实现
本文系统解析17种智能体架构设计模式,涵盖多智能体协作、思维树、反思优化与工具调用等核心范式,结合LangChain与LangGraph实现代码工作流,并通过真实案例验证效果,助力构建高效AI系统。
394 7
|
3月前
|
机器学习/深度学习 算法 文件存储
神经架构搜索NAS详解:三种核心算法原理与Python实战代码
神经架构搜索(NAS)正被广泛应用于大模型及语言/视觉模型设计,如LangVision-LoRA-NAS、Jet-Nemotron等。本文回顾NAS核心技术,解析其自动化设计原理,探讨强化学习、进化算法与梯度方法的应用与差异,揭示NAS在大模型时代的潜力与挑战。
752 6
神经架构搜索NAS详解:三种核心算法原理与Python实战代码
|
2月前
|
JSON 供应链 监控
1688商品详情API技术深度解析:从接口架构到数据融合实战
1688商品详情API(item_get接口)可通过商品ID获取标题、价格、库存、SKU等核心数据,适用于价格监控、供应链管理等场景。支持JSON格式返回,需企业认证。Python示例展示如何调用接口获取商品信息。