当前位置: 首页 > article >正文

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

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

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

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

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

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

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

先来看看两者的区别 

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

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

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

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

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

一  叶  知  秋,奥  妙  玄  心 


http://www.kler.cn/a/149066.html

相关文章:

  • uni-app中使用 unicloud 云开发平台③
  • 常见的噪声模型+图像中噪声模型的估计+常见的滤波方法(C++)
  • windows C#-LINQ概述
  • Python如何用正则表达式匹配并处理文件名
  • 43.第二阶段x86游戏实战2-提取游戏里面的lua
  • 【webrtc】 RTP 中的 MID(Media Stream Identifier)
  • linux常见命令合集
  • Linux文件随机抽取N行并取json的某个字段
  • qt实现一个安卓测试小工具
  • PTA-6-48 使用面向对象的思想编写程序描述动物
  • 开题答辩稿
  • ffmpeg 音视频转化
  • Maven——Maven发展历程
  • Java程序连接 nacos集群
  • Taro3+Vue3重构Mpvue小程序项目踩坑记
  • 一台服务器能放多少个网站?
  • 西南科技大学模拟电子技术实验二(二极管特性测试及其应用电路)预习报告
  • (2)(2.1) Lightware SF40/C(360度)
  • 一文搞定XMLHttpRequest,AJAX,Promise,Axios及操作实战
  • 解密Long型数据传递:Spring Boot后台如何避免精度丢失问题
  • 探索亚马逊云科技云存储服务的性能
  • 封装Vue中的axios请求库
  • 【Spark基础】-- RDD 转 Dataframe 的三种方式
  • 231128 刷题日报
  • 【精选】Spring整合MyBatis,Junit 及Spring 事务Spring AOP面向切面详解
  • Qt问题 QString 和 void* 相互转化