【SpringCloud】为什么选择微服务?

news/2025/2/23 6:24:14/

一般的平台会遇到的问题:

服务配置复杂。基础服务多,服务的资源配置复杂,传统方式管理服务复杂 

服务之间调用复杂。检索服务、用户中心服务等,服务之间的调用复杂,依赖多 

服务监控难度大。服务比较多,机器部署复杂,服务存活监控、业务是否正常监控尤为重要 

服务化测试问题。服务依赖性比较大,测试一个小的功能,周边服务也需要启动 

那么微服务的架构有什么优势呢? 

先来看看两者的区别 

传统单体架构分布式微服务架构
新功能开发需要时间容器开发和实现
部署不经常且容易部署经常发布,部署复杂
隔离性故障影响范围大故障影响范围小
架构设计难度小难度级数增加
系统性能响应时间快,吞吐量小响应时间慢,吞吐量大
系统运维运维简单运维复杂
技术技术单一且封闭技术多样且开放
测试和查错简单复杂
系统扩展性扩展性很差扩展性很好
系统管理重点在于开发成本重点在于服务治理和调度

 由此可见,分布式系统虽然有一些优势,但也存在一些问题

  • 架构设计变得复杂(尤其是分布式事务)
  • 部署单个服务会比较快,但一次部署多个服务会变得复杂
  • 系统的吞吐量会变大,但是响应时间会变长
  • 运维复杂度会因为服务变多而变得很复杂
  • 架构复杂导致学习曲线变大
  • 测试和查错的复杂度增大
  • 技术很多样,带来维护和运维的复杂度提升
  • 管理分布式系统中的服务和调度变得困难且复杂

简而言之,分布式系统架构的难点在于系统设计、管理和运维

参考资料:《微服务架构实战》—— 张锋  

一  叶  知  秋,奥  妙  玄  心 


http://www.ppmy.cn/news/1236773.html

相关文章

【科技素养】蓝桥杯STEMA 科技素养组模拟练习试卷5

1、随着对新冠肺炎研究的深入,多个国家都已经开始了针对新冠肺炎病毒的疫苗的开发。以下关于疫苗的描述中,不正确的是 A、灭活疫苗的基本原理是将经过处理的病原体注射进入人体内 B、大规模接种疫苗可以帮助达成“群体免疫“,阻断病毒传播 …

nodejs微信小程序+python+PHP -留学信息查询系统的设计与实现-安卓-计算机毕业设计

目 录 摘 要 I ABSTRACT II 目 录 II 第1章 绪论 1 1.1背景及意义 1 1.2 国内外研究概况 1 1.3 研究的内容 1 第2章 相关技术 3 2.1 nodejs简介 4 2.2 express框架介绍 6 2.4 MySQL数据库 4 第3章 系统分析 5 3.1 需求分析 5 3.2 系统可行性分析 5 3.2.1技术可行性:…

Ubuntu开机显示No bootable devices found

Ubuntu开机报错,显示显示No bootable devices found,如下图所示: 解决方案如下: 1. F2进入BIOS (1) 重启开启,按F2进入BIOS系统。 (2) 进入Boot Sequence,目前系统选择了UEFI,而Legacy选项为…

【Linux】make/Makefile 进度条小程序

目录 一,认识 make/makefile 二,实例代码 1,依赖关系 2,原理 3,项目清理 4,测试讲解 三,Linux第一个小程序-进度条 game.h game.c test.c 程序详解 一,认识 m…

Linux运行jmeter报错java.sql.SQLException:Cannot create PoolableConnectionFactory

在性能测试过程中遇见1个问题,终于解决了,具体问题如下。 问题 在windows电脑写jmeter脚本连接数据库连接成功 然后把该脚本放到Linux服务器上面,并把jmeter mysql驱动放到服务器上面,修改jmeter的mysql驱动路径信息 注意&…

深度学习技术前沿:探索与挑战

深度学习技术前沿:探索与挑战 一、引言 近年来,深度学习作为人工智能领域的重要分支,取得了令人瞩目的成就。它凭借强大的学习能力和出色的性能,在图像识别、语音识别、自然语言处理等众多任务中展现出巨大潜力。本文将深入探讨深…

【MATLAB源码-第87期】基于matlab的Q-learning算法栅格地图路径规划,自主选择起始点和障碍物。

操作环境: MATLAB 2022a 1、算法描述 Q-learning是一种无模型的强化学习算法,适用于有限的马尔可夫决策过程(MDP)。它的核心是学习一个动作价值函数(action-value function),即Q函数&#xf…

在ASP.NET Core 中使用 .NET Aspire 消息传递组件

前言 云原生应用程序通常需要可扩展的消息传递解决方案,以提供消息队列、主题和订阅等功能。.NET Aspire 组件简化了连接到各种消息传递提供程序(例如 Azure 服务总线)的过程。在本教程中,小编将为大家介绍如何创建一个 ASP.NET …