【黑马程序员】SpringCloud——微服务

文章目录

  • 前言
  • 一、服务架构演变
    • 1. 单体架构
    • 2. 分布式架构
      • 2.1 服务治理
    • 3. 微服务
      • 3.1 微服务结构
      • 3.2 微服务技术对比
      • 3.3 企业需求
  • 二、SpringCloud
    • 兼容性
  • 三、服务拆分及远程调用
    • 1. 服务拆分
      • 1.1 服务拆分注意事项
      • 1.2 导入服务拆分 Demo
    • 2. 远程调用
      • 2.1 根据订单 id 查询订单功能
      • 2.2 远程调用方式分析
        • 2.2.1 微服务远程调用—查询订单
          • ① 注册 RestTemplate
          • ② 服务远程调用 RestTemplate
  • 总结


前言

跟着B站的黑马程序员学习 SpringCloud,语言为java,目前是第一个学习内容
课程传送门:SpringCloud——微服务


一、服务架构演变

  • 单体架构特点:
    简单方便,高度耦合,拓展性差,适合小型项目

  • 分布式架构特点:
    松耦合,扩展性好,但架构复杂,难度大,适合大型互联网项目

  • 微服务:一种良好的分布式架构方案
    优点:拆分粒度更小、服务更独立、耦合度更低
    缺点:架构非常复杂,运维、监控、部署难度提高

1. 单体架构

【黑马程序员】SpringCloud——微服务_第1张图片

2. 分布式架构

【黑马程序员】SpringCloud——微服务_第2张图片

2.1 服务治理

【黑马程序员】SpringCloud——微服务_第3张图片

3. 微服务

【黑马程序员】SpringCloud——微服务_第4张图片

3.1 微服务结构

【黑马程序员】SpringCloud——微服务_第5张图片

3.2 微服务技术对比

【黑马程序员】SpringCloud——微服务_第6张图片

3.3 企业需求

【黑马程序员】SpringCloud——微服务_第7张图片

二、SpringCloud

【黑马程序员】SpringCloud——微服务_第8张图片

兼容性

【黑马程序员】SpringCloud——微服务_第9张图片

三、服务拆分及远程调用

1. 服务拆分

  • 微服务需要根据业务模块拆分,做到单一职责,不要重复开发相同业务
  • 微服务可以将业务暴露为接口,供其他微服务使用
  • 不同微服务都应该有自己独立的数据库

1.1 服务拆分注意事项

【黑马程序员】SpringCloud——微服务_第10张图片

1.2 导入服务拆分 Demo

【黑马程序员】SpringCloud——微服务_第11张图片

2. 远程调用

  • 基于 RestTemplate 发起的 http 请求实现远程调用
  • http 请求远程调用是与语言无关的调用,只要知道对方的 ip、端口、接口路径、请求参数即可

2.1 根据订单 id 查询订单功能

【黑马程序员】SpringCloud——微服务_第12张图片

2.2 远程调用方式分析

【黑马程序员】SpringCloud——微服务_第13张图片

2.2.1 微服务远程调用—查询订单
① 注册 RestTemplate

【黑马程序员】SpringCloud——微服务_第14张图片

② 服务远程调用 RestTemplate

【黑马程序员】SpringCloud——微服务_第15张图片


总结

以上就是本章要讲的内容,本文仅仅简单复述了老师讲课的文本内容,内容有误麻烦联系。

你可能感兴趣的:(SpringCloud,spring,cloud,微服务,spring)