深入浅出 -- 系统架构之垂直架构

当业务复杂度增加、访问量逐渐增大出现高并发时,单体架构无法满足需求,可以根据业务功能对系统进行拆分,以提高访问效率。

垂直架构介绍

1.垂直架构一般是因为单体架构太过于庞大而进行的拆分,拆分后各个系统应满足独立运行互相不影响

2.也有可能时某个平台招标由不同厂商负责不同子系统的开发

3.垂直架构可以看成是多个单体架构的组合

2.2 优点:

对比单个单体架构系统,它拆分了系统的流量,可以针对高峰共功能进行拓展

优化了单体架构过于庞大时出现的难以维护的问题。

2.3 缺点:

1.在各个系统间单体架构存在的问题仍然存在并且有新的问题产生

2.会有功能的重叠,重复造轮子

3.拆分后存在隔离与治理能力上的欠缺,并且会给技术异构带来麻烦。

4.拆分后可能带来数据冗余,但是又需要进行同步,要么使用数据库层面的同步,要么使用系统间

的接口进行同步处理。

5.系统之间的交互,由于缺少隔离与治理能力,一般都是硬编码的点对点交互。

参考相对于单体架构如下:

将一个大型应用拆分成多个相互独立的小型应用成为解决单体应用的一种方案,这就是垂直架构(也成为"竖井式架构")。垂直架构根据业务属性将一个大的单体应用拆分成多个模块或子系统,子系统之间没有直接关联。

垂直架构相较于单体架构而言,进行了部分解耦,但是不够彻底,在各个子系统相互依赖的代码和模块中,存在重复代码拷贝和模块功能重复开发的情况。

垂直架构按功能进行 MVC 划分和按职能进行前后端分离模式,通过分层来规范职责和定义边界。

相关推荐
2601_9578848411 分钟前
深度拆解:大模型RAG架构下,GEO优化的技术实现路径
人工智能·架构
Curvatureflight2 小时前
【架构实战】生产级大模型 API 接入指南:流式响应(Streaming)异常处理与监控闭环
python·架构
这是谁的博客?3 小时前
微服务架构设计模式深度解析:从拆分策略到容灾机制
微服务·设计模式·云原生·架构·架构设计·后端开发·分布式系统
卷毛的技术笔记3 小时前
Java后端硬核实战:用Spring AI Alibaba+Redis给LLM装上“超强记忆中枢”
java·人工智能·redis·后端·spring·ai·系统架构
oo哦哦4 小时前
企业级矩阵管理中台:从“人海战术“到“AI智能增长“的架构演进与实践解析
人工智能·矩阵·架构·轻量化中台
heimeiyingwang5 小时前
【架构实战】分库分表ShardingSphere:突破数据库瓶颈
架构
福老板的生意经5 小时前
AI 短视频全链路创作分发系统架构解析:模块化设计与核心技术实现
人工智能·系统架构·音视频
梦梦代码精5 小时前
以前比功能,现在比“不崩溃”——LikeShop如何用工程化架构终结商城维护噩梦
架构·开源·代码规范
该昵称用户已存在5 小时前
双碳背景下的能源数据变现:MyEMS 开源架构的资产化设计思路
架构·开源·能源
百珏5 小时前
海量人群包存储优化:基于 RoaringBitmap 交换格式与 Redis 分片 Bitmap 的实践
java·后端·架构