惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

V
V2EX
C
Check Point Blog
博客园_首页
B
Blog
D
Docker
U
Unit 42
量子位
I
InfoQ
有赞技术团队
有赞技术团队
Martin Fowler
Martin Fowler
GbyAI
GbyAI
L
LangChain Blog
云风的 BLOG
云风的 BLOG
博客园 - Franky
美团技术团队
T
The Blog of Author Tim Ferriss
阮一峰的网络日志
阮一峰的网络日志
月光博客
月光博客
Vercel News
Vercel News
Recent Announcements
Recent Announcements
雷峰网
雷峰网
大猫的无限游戏
大猫的无限游戏
小众软件
小众软件
Google DeepMind News
Google DeepMind News

博客园 - 飞翔在天

AI 辅助开发 - 整体 反应式编程 【转载】技术方案设计的方法论及案例分享—如何体现技术深度 云原生 性能调优 团队管理 技术管理 【生产案例】日登录用户、月登录用户统计、聚合统计 【生产案例】点赞数、排行榜、未读消息数(含B站方案) 【JVM】类加载器&双亲委派 【配置项读取】 如何写好代码 【缓存】基本理论 Lambda架构和Kappa架构 【生产案例】 【架构-案例】聊天系统 【Spring】整体 【JVM】 【Spring-WebFlux】响应式 AI ServiceComb
【架构】单元化架构
飞翔在天 · 2025-08-05 · via 博客园 - 飞翔在天

参考1:阿里单元化白皮书

http://docs-aliyun.cn-hangzhou.oss.aliyun-inc.com/assets/attach/160617/AntCloud_zh/1585895792638/%E8%9A%82%E8%9A%81%E5%8D%95%E5%85%83%E5%8C%96%E8%A7%A3%E5%86%B3%E6%96%B9%E6%A1%88%E7%99%BD%E7%9A%AE%E4%B9%A6.pdf

参考2:单元化架构在字节跳动的落地实践

https://www.infoq.cn/article/itqowhjhw23s5yhyyg5v

单元化架构的背景

同城双活架构被引入,通过在两个同城机房之间分配流量负载,可以充分利用计算资源处理服务请求,以更有效地利用资源。但是,由于存储技术的限制(即数据的双写同步问题),系统的整体性能往往受到存储性能的制约。尽管在分布式系统中,数据存储问题可以通过分库分表或分布式数据库来缓解,但随着数据量的增加,仍然会面临性能瓶颈。因此,单元化架构就应运而生。

单元化架构理念

单元化的核心理念是将业务按照某种维度划分成一个个单元,理想情况下每个单元内部都是完成所有业务操作的自包含集合,能独立处理业务流程,各个单元均有其中一部分数据,所有单元的数据组合起来是完整的数据(各企业实际落地过程中会结合实际业务和基建情况做一些折中)。流量按照某种分区维度(例如流量所属用户)Sharding 到不同的单元,调度上按照流量携带的分区信息进行调度,保证同一时刻该分区的数据写入都在同一个单元

单元化架构希望在分布式架构应用拆分和数据拆分的基础上解决以下问题
异地场景下的访问延时问题,实现异地多活。
单机房数据库连接限制问题,突破物理限制。
容量预估和扩容复杂问题,按单元预估和扩容。
发布变更灰度问题,支持灰度发布。

单元化架构的核心原则是单元化流量封闭,包含以下几点:
核心业务是可分片的。
核心业务的分片是均衡的,如支付宝以用户ID作为分片维度。
核心业务尽量自包含,调用尽量封闭。
整个系统要面向逻辑分区设计,而不是物理部署。