项目架构演进

目录

单体架构

集群架构

微服务架构


本文主要介绍项目架构演进过程,从简单的单体架构逐步演进到微服务架构,每种架构简要说明了优缺点。

项目架构无所谓好坏,只有适不适合当前的业务,项目架构的标准有很多,本文主要以不同UV指标(本文只说明这一种指标,实际项目架构要综合各类需求指标来判断采用何种技术架构)来说明不同的架构。

UV(Unique Visitor)独立访客,统计1天内访问某站点的用户数(以cookie为依据);访问网站的一台电脑客户端为一个访客。可以理解成访问某网站的电脑的数量。

单体架构

上图中的应用服务器和数据库放到一台服务器中。

上图中的应用服务器和数据库服务器独立部署。

单体应用架构优缺点:

优点:集成方便,易于维护

缺点:服务间依赖较多,项目较大,启动时间长,互相之间会有资源争夺,无高可用。

集群架构

上面架构图中,代理服务器、应用服务采用了集群,数据读写分离,优缺点如下:

优点:可以避免应用单点故障,增加了热点数据缓存Redis,增加了数据库读写分离,提高应用和数据处理能力。

缺点:增加了维护成本

微服务架构

上图架构图中,服务做了拆分,每个服务都是集群,增加了网关,消息队列,注册中心,配置中心,熔断限流组件,监控告警等等组件,优缺点如下:

优点:每个服务独立开发部署和启动,提高数据库性能

缺点:关注的技术点多,如数据一致性问题,各类服务治理的能力,增加了维护成本

相关推荐
littleplayer2 分钟前
Swift: Combine的错误处理
前端·架构
鸿蒙先行者2 小时前
鸿蒙分布式能力调用失败解决方案及案例
分布式·harmonyos
3Cloudream2 小时前
互联网大厂Java面试实录:Spring Boot与微服务架构解析
spring boot·微服务·hibernate·jwt·java面试
岛屿旅人2 小时前
欧盟《人工智能法案》生效一年主要实施进展概览(二)
网络·人工智能·安全·web安全·架构
yourkin6663 小时前
RocketMQ 分布式事务方案
分布式·rocketmq
微扬嘴角12 小时前
springcloud篇5-微服务保护(Sentinel)
spring cloud·微服务·sentinel
lifallen12 小时前
Hadoop MapReduce 任务/输入数据 分片 InputSplit 解析
大数据·数据结构·hadoop·分布式·算法
天上掉下来个程小白12 小时前
微服务-25.网关登录校验-网关传递用户到微服务
java·数据库·微服务