一、微服务

淘宝架构演进链接 集群: 概述: 多台服务器做相同的事情
解决的问题:
提高并发量
解决单点故障(单点,单台指只有一台服务器,一旦宕机,整个项目将会瘫痪)
保证服务的高可用
分布式:
概述: 不同的服务器做不同的事情,协作起来完成一个完整的业务
解决的问题:
降低耦合,让服务器专职做一件事情
正向代理:
概述: 代理客户端,向服务端发送请求
反向代理:
概述: 代理服务端接收来自客户端的请求
负载均衡:
概述: 将并发过来的请求,均匀的分发给不同的服务器
项目 == App(Application-应用) == 服务

微服务的架构特征:

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

    二、SpringCloud

    image.png
    官网链接
    image.png

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

    image.png
    image.png

    总结:

  • 单体架构:简单方便,高度耦合,扩展性差,适合小型项目。例如:学生管理系统

  • 分布式架构:松耦合,扩展性好,但架构复杂,难度大。适合大型互联网项目,例如:京东、淘宝
  • 微服务:一种良好的分布式架构方案①优点:拆分粒度更小、服务更独立、耦合度更低②缺点:架构非常复杂,运维、监控、部署难度提高
  • SpringCloud是微服务架构的一站式==解决方案==,集成了各种优秀微服务功能组件