初识微服务

我们在曾经最常见的就是所谓的单体架构,但是由于网民越来越多,单体架构已经逐渐的被淘汰出去,所以我们在单体架构的基础上提出了微服务,它提倡将单一应用程序划分成一组小的服务,服务之间互相协调、互相配合,还进行了业务的解耦,下面让我们一起来看

单体架构:

将业务的所有功能集中在一个项目进行开发,打成一个包进行部署

优点:

1.架构简单(因为是在一台服务器进行部署,没有太复杂的架构体系)

2.部署成本低

缺点:耦合度较高

特点:简单方便、高度耦合、扩展性强

分布式架构:

根据业务功能对系统进行拆分,每个业务模块作为独立项目开发,称为一个服务

优点:

1.降低服务耦合

2.有利于服务升级拓展

特点:松耦合、扩展性好、但架构复杂,难度大

微服务

微服务是一种经过良好架构设计的分布式架构方案,微服务的特征如下:

  • 单一职责:微服务拆分粒度更小,每一个服务都对应唯一的业务能力,做到单一职责,避免重复业务开发
  • 面向服务:微服务对外暴露业务接口
  • 自治:团队独立、技术独立、数据独立、部署独立
  • 隔离性强:服务调用做好隔离、容错、降级,避免出现级联问题

优点:拆分粒度更小,服务更独立,耦合度更低

缺点:架构非常复杂,运维、监控、部署难度提高

相关推荐
ZhengEnCi1 小时前
Q01-高并发点赞系统架构设计
架构
笨鸟飞不快4 小时前
从 MVC 到 DDD:一次真实的渐进式迁移实录
后端·架构
这个DBA有点耶21 小时前
GROUP BY优化全解:如何写出既不丢数据又飞快的分组查询
数据库·mysql·架构
锋行天下1 天前
我试图优化 Vite 的拆包,结果首屏慢了 10 倍
前端·vue.js·架构
小鼻子的猫1 天前
独立开发 30 天:2.5 万行代码,23 个 Bug,5 次重构——一个 AI 社区的诞生
架构
咖啡八杯1 天前
GoF设计模式——命令模式
java·设计模式·架构
candyTong1 天前
阿里开源 AI Code Review 工具:ocr review 的执行链路解析
javascript·后端·架构
doiito2 天前
【Agent Harness】TPS的“自工程完结”教会了我一件事:别把Bug留给下一道工序
架构·rust
烬羽2 天前
中英文 token 数量差一倍?两段 JS 代码搞懂 LLM 底层是怎么"读"文字的
javascript·程序员·架构