微服务相比单体服务主要是解耦,优缺点主要从开发、运行和维护三个方面看。
优点
1、开发
各模块不会相互影响,不容易造成代码冲突,容易做 code review 和功能测试。可以采用各自的技术栈。局部修改易部署。
2、运行
某个模块的异常不会影响到其它模块的运行。
3、维护
各模块按需扩缩容。
4、业务切分
开发人员关注自己的业务,便于组织管理。此外,自己的数据不需要开放给无关的人员。
缺点
1、开发
需要考虑分布式的复杂性,比如事务和系统容错等。
2、运行
通信成本较高,增加网络延迟。
3、维护
运维难度提升,需要做流量调度、链路监控等。
微服务架构强调模块化,提升开发效率和系统稳定性。优点包括独立开发、部署,故障隔离,按需扩展。然而,它也引入了分布式系统的复杂性,如事务管理和网络延迟问题,同时运维难度增加,需要更精细的流量管理和监控。

被折叠的 条评论
为什么被折叠?



