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

01-了解微服务架构的演变过程和微服务技术栈

微服务

微服务架构演变

单体架构:将业务的所有功能集中在一个项目中开发最后打成一个包部署

  • 优点: 架构简单, 部署成本低,适合小型项目
  • 缺点: 耦合度高, 升级维护困难

在这里插入图片描述

分布式架构:根据业务功能对系统做拆分,每个业务功能模块作为独立项目开发称为一个服务

  • 优点: 降低服务耦合, 有利于服务升级和拓展, 适合大型互联网项目

  • 缺点: 服务调用关系错综复杂,服务拆分时需要制定一套标准约定服务拆分的细粒度,服务之间如何实现远程调用,服务的调用关系如何管理等问题

在这里插入图片描述

微服务架构: 随着互联网行业的发展对服务的要求也越来越高,服务架构也从单体架构逐渐演变为现在流行的微服务架构(经过良好架构设计的分布式架构方案)

  • 优点:拆分力度更小、服务更独立、耦合度更低
  • 缺点:架构非常复杂,运维、监控、部署难度提高

在这里插入图片描述

微服务架构方案

微服务的架构特性: 就是在给分布式架构制定一个标准,进一步降低服务之间的耦合度,提供服务的独立性和灵活性, 做到高内聚,低耦合

  • 单一职责:微服务拆分粒度更小,每一个服务都对应唯一的业务能力,做到单一职责
  • 自治:团队独立、技术独立、数据独立,独立部署和交付
  • 面向服务:服务提供统一标准的接口与语言和技术无关
  • 隔离性强:服务调用做好隔离、容错、降级,避免出现级联问题,例如积分服务挂了,不能影响到用户服务等其他服务

人们需要指定一套行之有效的标准来约束分布式架构,而微服务就是一种经过良好架构设计的分布式架构方案,不同厂商提供了不同的架构方案

在这里插入图片描述

SpringCloud

SpringCloud是目前使用最广泛的微服务架构方案,它集成了各种微服务功能组件并基于SpringBoot实现了组件的自动装配,从而提供了良好的开箱即用体验

功能组件
微服务注册与发现Eureka, Nacos, Consul
服务远程调用OpenFeign, Dubbo
服务链路监控Zipkin, Sleuth
统一配置管理SpringCloudConfig, Nacos
统一网关路由SpringCloudGateway, Zuul
流控、降级、保护Hystix, Sentinel

SpringCloud底层是依赖于SpringBoot的并且有版本的兼容关系

Release TrainBoot Version
2020.0.x aka llford2.4.x
Hoxton2.2.x,2.3.x (对应SR5以上的版本)
Greenwich2.1.x
Finchley2.0.x
Edgware1.5.x
Dalston1.5.X

微服务技术栈

微服务架构在项目中的具体应用

在这里插入图片描述

微服务架构中涉及到的组件

在这里插入图片描述


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

相关文章:

  • js html转pdf
  • C语言经典100例
  • 可访问性(Accessibility)的重要性及实现:构建包容性的数字世界
  • 【信息系统项目管理师】高分论文:论信息系统项目的进度管理(人力资源管理系统)
  • pip使用方法
  • linux-18 关于shell(十七)file命令
  • 图论 2023.11.20
  • C++中的内存管理
  • 网络连接Android设备
  • 记录一个简单的博客系统该开发过程
  • 2311rust,1.31版本更新
  • MQTT通信协议使用说明
  • 智慧箱变动环辅控系统
  • Thales安全解决方案:国家网络安全的关键
  • python 迭代器
  • SQL sever2008数据库备份、还原以及库检查
  • Linux系统编程 系统编程概念
  • CV计算机视觉每日开源代码Paper with code速览-2023.11.16
  • ​软考-高级-系统架构设计师教程(清华第2版)【第20章 系统架构设计师论文写作要点(P717~728)-思维导图】​
  • SAP gui 登录条目不让修改
  • 电子秤方案:做一个宠物勺方案设计
  • GCANet
  • 【MATLAB基础绘图第17棒】绘制玫瑰图
  • Maven工程继承关系,多个模块要使用同一个框架,它们应该是同一个版本,项目中使用的框架版本需要统一管理。
  • springboot上传文件
  • zabbix-proxy分布式监控