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

【Spring Cloud Alibaba】001-单体架构与微服务架构

【Spring Cloud Alibaba】001-单体架构与微服务

文章目录

  • 【Spring Cloud Alibaba】001-单体架构与微服务
  • 一、单体架构
    • 1、单体应用与单体架构
    • 2、单体应用架构图
    • 3、单体架构优缺点
      • 优点
      • 缺点
  • 二、微服务
    • 1、微服务的“定义”
    • 2、微服务的特性
    • 3、微服务架构图
    • 4、微服务的优缺点
      • 优点
      • 缺点
    • 5、微服务的使用场景、
      • 适合使用微服务的场景
      • 不适合使用微服务的场景

一、单体架构

1、单体应用与单体架构

一个归档包(例如 war 包、jar 包)包含所有功能的应用程序,我们通常称为单体应用。
架构单体应用的方法论就是单体应用架构

2、单体应用架构图

在这里插入图片描述

3、单体架构优缺点

优点

  • 架构简单;
  • 开发、测试、部署方便;

缺点

  • 复杂性高(功能越来越复杂);
  • 部署慢、部署频率低(应用很大,每次都需要全量部署);
  • 扩展能力受限制(不同模块对硬件需求不同,单体应用服务器只能往全方位扩展);
  • 阻碍技术创新(新技术无法应用);

二、微服务

1、微服务的“定义”

微服务架构风格是一种将单个应用程序作为一组小型服务开发的方法,每种服务都在自己的进程中运行,服务间通信采用轻量级通信机制(通常是HTTP资源API)。 这些服务是围绕业务功能构建的,可以通过全自动部署机制独立部署。 这些服务的集中管理最少,可以用不同的编程语言编写,并使用不同的数据存储技术

2、微服务的特性

  • 每个微服务运行在自己的进程里(有独立的Tomcat);
  • 一组独立运行的微服务共同构建整个系统
  • 每个微服务为独立的业务开发,一个微服务只关注某个特定的功能
  • 可以使用不同的编程语言数据存储技术;
  • 微服务之间通过轻量的通信机制通信(例如通过 REST API 进行调用);
  • 全自动的部署机制。

轻量的通信机制:
1、通信协议应该是轻量的;
2、能够跨平台。

3、微服务架构图

在这里插入图片描述

4、微服务的优缺点

优点

  • 单个服务更易于开发和维护;
  • 单个微服务启动快;
  • 局部修改容易部署;
  • 技术栈不受限;

缺点

  • 运维要求高;
  • 分布式应用固有的复杂性;
  • 重复劳动(比如不同编程语言功能相同的工具类等);

5、微服务的使用场景、

适合使用微服务的场景

  • 大型复杂的项目;
  • 应用需要快速迭代;
  • 访问压力大;

不适合使用微服务的场景

  • 业务稳定;
  • 迭代周期长。
http://www.lryc.cn/news/10794.html

相关文章:

  • Renderer 使用材质分析:materials、sharedMaterials 及 MaterialPropertyBlock
  • java学习----网络编程
  • 这些「误区」99%的研发都踩过
  • Bi系统跟数据中台的区别是什么?
  • 微信小程序反编译方法分享
  • 有了这些接口测试用例+工具,测试效率想不提升都难
  • 麒麟 arm架构安装nginx
  • logrotate失效的排查---selinux开启状态拦截问题及解决方法
  • Allegro使用总结-查看Layout基本操作:
  • cmd del命令笔记
  • apifox持续集成+java+企微机器人+xxljob定时推送
  • 盘点Linux内核网络知识100道题,这篇就够了
  • 数据库敏感字段脱敏
  • skynet 游戏服务器探索(1)--熟悉skynet(网络)
  • select、poll、epoll
  • rollup的基本使用 基本配置与处理各种文件
  • ubuntu-debian系-redhat系
  • Altium Designer 18中原理图DRC编译和PCB DRC检查-AD DRC
  • zipfile — 访问 ZIP 压缩文件
  • 检查nmos管是否损坏
  • 第七章 - 聚合函数(count,avg,sum,max,min)和一些数学函数
  • Typescript的原始据类型和Any类型
  • [python入门㊼] - python类的高级函数
  • 【Windows】使用Fiddler 工具对手机进行接口监听
  • SpringCloudAlibab-nacos
  • 从一致性角度考虑推荐冷启动长尾推荐问题(二)
  • 电脑c盘满了怎么清理,c盘空间清理
  • vite的基本使用
  • JavaScript 字符串(String) 对象
  • 小知识点:Mac M1/M2 VMware Fusion 安装 Centos 7.9(ARM 64 版本)