微服务架构的优缺点

微服务架构带来了易于开发和维护、按需伸缩等优势,但同时也伴随着服务管理复杂、分布式问题放大和接口调整成本高等挑战。
摘要由CSDN通过智能技术生成

微服务架构的优点

易于开发和维护

一个微服务只关注一个特定的业务功能,所以它的业务清晰、代码量较少。开发和维护单个微服务相对比较简单,整个应用是由若干个微服务构建而成,所以整个应用也会维持在可控状态。

单个微服务启动较快

单个微服务代码量较少,所以启动会比较快。

局部修改容易部署

单体应用只要有修改,就要重新部署整个应用,微服务解决了这样的问题。一般来说,对某个微服务进行修改,只需要重新部署这个服务即可。

技术栈不受限

在微服务中,我们可以结合项目业务及团队的特点,合理地选择技术栈。例如某些服务可以使用关系型数据库 Mysql,有些服务可以使用非关系型数据库如 redis;甚至可根据需求,部分微服务使用 Java 开发,部分微服务使用 Node.js 开发。

按需伸缩

可根据需求,实现细粒度的扩展。例如,系统中的某个微服务遇到了瓶颈,可以结合这个微服务的业务特点,增加内存、升级 CPU 或者增加节点。

微服务架构的缺点

服务太多

服务太多,导致服务间的依赖错综复杂,运维难度大。

放大了分布式架构的系列问题

  1. 分布式事务(seata)
  2. 分布式锁怎么处理(redission)
  3. 服务注册与发现(nacos)
  4. 依赖服务不稳定(sentinel)导致服务雪崩

运维复杂度提升

运维复杂度陡增,部署数量多,监控进程多导致整体运维复杂度提升。

分布式固有的复杂性

使用微服务构建的是分布式系统。对于一个分布式系统,系统容错、网络延迟等都会带来巨大的挑战。

接口调整成本高

微服务之间通过接口进行通信。如果修改某一个微服务 API,可能所有使用该接口的微服务都需要调整。

参考资料:
3.微服务的优缺点
什么是微服务架构?微服务架构有什么优缺点?

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值