什么是微服务架构?

为什么需要微服务架构

传统的单体架构:将所有的功能模块打包到一起并放在一个归档包中(例如war格式或者Jar格式)。

缺点
1.过于臃肿、难以维护:当项目包含的模块过多时,可能会因为种种原因,如依赖关系不清晰、代码质量参差不齐等,造成后续开发人员难以维护的困境。
2.资源无法隔离,存在风险:整个单体结构系统的各个功能模块都依赖于同样的数据库、内存等资源,一旦某个功能模块对资源使用不当,整个系统都会被拖垮。
3.无法灵活扩展:单体结构系统只能作为一个整体进行扩展,无法根据各个业务模块进行灵活扩展。

为了解决上述问题,微服务就应运而生啦!

什么是微服务架构

概念

微服务是:
1.一种将单个应用程序作为一套小型服务开发的方法,每个小型服务都运行在自己的进程中,并经常采用HTTP资源API轻量的机制来相互通信。
2.围绕业务功能构建的,可以通过全自动部署机制独立部署。
3.可以仅做最低限度的集中管理,可以用不同的编程语言编写,并使用不同的数据存储技术。

优点

1.易于维护:一个微服务只关注一个业务功能,所以微服务架构的业务清晰,维护起来相对比较简单。
2.按需扩展:微服务是以每一个独立组件为单位进行部署的,所以可以实现按需扩展。
3.资源隔离:每一个微服务拥有独立的数据源,两个服务之间的数据访问只能通过接口等来完成,有效避免了服务之间争用数据库和缓存资源所带来的问题。

不足

1.增加了开发和测试的复杂度。
2.分布式系统本身的复杂性(异步补偿机制、系统容错、网络延迟、分布式事务等)。

和SOA的区别

SOA架构是一种粗粒度、松耦合的服务架构,强调的是异构系统之间的服务通信,而微服务架构强调的是系统按业务边界做更细粒度的拆分和部署。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值