02-微服务架构的概念与优缺点


前言

通过上一章的介绍,微服务架构已经成为现代项目架构中不可或缺的重要角色。本文将介绍微服务架构的概念和优缺点,了解微服务架构成为项目架构中重要角色的动因。


一、微服务架构的概念

微服务是系统架构上的一种设计风格,它的主旨是将一个原本独立的系统拆分成多个小型服务,这些小型服务都在各自独立的进程中运行,服务之间通过Restful进行通信协作。被拆分成的小型服务都围绕系统中的某一项或一些耦合度较高的业务功能进行构建,并且每个服务都维护着自身的数据存储、业务开发、自动化测试案例以及独立部署机制。
在这里插入图片描述

同时,也可以参考下其他相关网站关于微服务架构的描述。如:microservices.io

注意:微服务与微服务架构不是同一个概念!

微服务指的是服务的大小,更偏向于业务服务自身的大小范围。
微服务架构是一种架构,体现在整体系统架构的选型上,决定了产品的体量。

二、微服务架构的优点

与传统单体架构相比,微服务架构有很多优点,具体表现如下。

  1. 更好的可扩展性:微服务架构允许每个服务独立运行,从而可以按需扩展某些服务,而不会影响整个应用程序的性能。

  2. 更快的上线时间:由于服务之间的解耦,小组可以更快地开发和部署服务,更快地上线新功能。

  3. 更好的可靠性:如果一个服务出现问题,其他服务仍然可以正常运行。这个问题被限定在一个独立的服务上,而不是整个应用程序。

  4. 更好的可维护性:由于服务之间的解耦,每个服务可以由不同的团队管理和维护,而不会干扰其他服务。

  5. 更好的技术选择:每个服务可以使用不同的技术,因为它们可以独立运行。这可以让开发人员选择最适合他们的开发语言和框架。

  6. 更好的可移植性:由于服务之间的解耦,可以更容易地将服务转移到其他环境或云提供商。

  7. 更好的性能:微服务架构允许使用轻量级的通信协议,从而可以更快地传输数据,提高应用程序性能。

从我的角度来说,微服务架构的优点,可以总结为四点。
在这里插入图片描述
其中,自身独立性好,主要是指每个服务可以有自己的技术栈,自己的架构,以满足服务为目的开发,提高服务的内聚性。


三、微服务架构的缺点

微服务架构虽然被认为是一种现代化、灵活和可扩展的架构风格,但它仍然存在一些不足之处:

  1. 复杂性:微服务架构中的服务数量和交互关系可能非常复杂,这使得架构的设计、开发、测试和部署等方面都变得更加困难。

  2. 部署和运维:由于微服务架构中服务的数量众多,需要更频繁的部署和运维工作,这可能会导致运维成本的增加。

  3. 分布式事务管理:当多个微服务涉及到同一个业务逻辑时,需要进行分布式事务管理,该过程较为复杂。

  4. 性能和稳定性:微服务架构中服务的数量众多,服务之间的通信会增加系统的延迟和网络带宽的占用,同时也增加了系统故障的可能性。

  5. 数据一致性:微服务架构中的服务之间可能需要共享数据,但这也带来了数据一致性的问题。为了保证数据一致性,需要进行更复杂的协调和同步工作。

这里面我认为微服务架构所面临的最显著不足就是分布式事务的处理以及部署和运维的难题。然而,对于这两个问题,技术大佬们已经推出很多解决方案,此处不展开进行详细讨论,它们将在后续章节进行详细介绍。


总结

通过第一章和本章内容的讲述,可以看出微服务架构和SOA都是对服务的拆分,那么它们之间有什么区别呢,这里再次做一个对比。

对比项微服务架构SOA
规模拆分为多个服务拆分为多个子系统
服务粒度粒度较小,每个服务都有特定的功能粒度较大,一个服务可以实现相关功能
数据库每个服务都有自己的数据库共享一个中央的数据存储
部署方式可以独立部署服务相互依赖,通过中间件部署
通信协议轻量级的RESTful API使用SOAP协议
服务总线无总线企业服务总线

由此也可以看出,在面对更加复杂的业务,更加精细的需求,微服务架构相比于SOA,会更加适合现代项目架构的需要。

总的来说,通过深入了解微服务架构的概念以及其优缺点,我们可以发现在项目构建过程中,我们需要全面考虑各方面因素,并仔细权衡和设计,以充分发挥微服务架构的优势,同时避免其潜在不足对系统造成的负面影响。

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值