大型网站系统架构演化实例_8.业务拆分

1.第九阶段:业务拆分

大型网站为了应对日益复杂的业务场景,通过使用分而治之的手段将整个网站业务分成不同的产品线。如大型购物交易网站都会将首页、商铺、订单、买家、卖家等拆分成不同的产品线,分归不同的业务团队负责。

具体到技术上,也会根据产品线划分,将一个网站拆分成许多不同的应用,每个应用独立部署。应用之间可以通过一个超链接建立关系(在首页上的导航链接每个都指向不同的应用地址),也可以通过消息队列进行数据分发,当然最多的还是通过访问一个数据存储系统来构成一个关联的完整系统。

此时,网站系统架构如图1所示。

图1 第九阶段网站架构

2.消息队列服务器

2.1消息队列

消息:是指在应用系统之间传送的数据。队列:排队的模型 先进先出 类似于火车进隧道。消息队列(Message Queue)是一种应用间的通信方式。消息发布者只管把消息发布到MQ中而不管谁来取,消息使用者只管从MQ中取消息而不管谁发布的。

2.2消息队列的应用场景

**(1)应用耦合:**多应用间通过消息队列对同一消息进行处理,避免调用接口失败导致整个过程失败;

**(2)异步并行处理:**多应用对消息队列中同一消息进行处理,应用间并发处理消息,相比串行处理,减少处理时间;

**(3)限流削峰:**广泛应用于秒杀或抢购活动中,避免流量过大导致应用系统挂掉的情况;

**(4)消息驱动的系统:**系统分为消息队列、消息生产者、消息消费者,生产者负责产生消息,消费者(可能有多个)负责对消息进行处理;

2.3常见的消息队列

当前使用较多的消息队列有RabbitMQ、RocketMQ、ActiveMQ、Kafka、ZeroMQ、MetaMQ等,而部分数据库如Redis、MySQL以及phxsql也可实现消息队列的功能。

相关推荐
山东点狮信息科技有限公司12 小时前
企业级开源OA系统推荐
vue.js·spring boot·性能优化·系统架构·开源
Sam_Deep_Thinking13 小时前
DDD里的领域服务,到底什么时候该用?
程序员·架构·系统架构·ddd
国科安芯15 小时前
抗辐射微控制器在卫星电源管理分系统中的控制架构与可靠性研究——基于AS32S601型MCU的星载能源系统智能化管理技术分析
网络·单片机·嵌入式硬件·安全·架构·系统架构·能源
liulilittle2 天前
麻将系统架构
服务器·网络·分布式·游戏·系统架构·通信
字节跳动开源3 天前
字节跳动 STE 固件团队亮相 OCP China 2026:从标准化到智能化,构建下一代数据中心固件基础设施
人工智能·ai·系统架构·开源·硬件工程
国科安芯3 天前
ASC8T245S 8通道电平转换设计实战:从系统架构到QFN24 Layout再到量产测试
网络·单片机·物联网·安全·fpga开发·系统架构
笨拙的老猴子3 天前
小明学架构师的第七课:策略模式:告别if-else的选择困难症
系统架构·策略模式
阿宇的技术日志3 天前
阿里 AI 云诊断系统 Loop Engineering 实战:实现从日志扫描到预发部署的全自主闭环
人工智能·系统架构·loopengineering
圣殿骑士-Khtangc5 天前
传统单体架构改造方案实战:从单体地狱到模块化架构的渐进式演进
系统架构
消失的旧时光-19435 天前
第七篇:RTK + 地图 + 机器人:完整定位系统架构解析
android·系统架构·机器人·imu·rtk