【黑马程序员】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. 单体架构

在这里插入图片描述

2. 分布式架构

在这里插入图片描述

2.1 服务治理

在这里插入图片描述

3. 微服务

在这里插入图片描述

3.1 微服务结构

在这里插入图片描述

3.2 微服务技术对比

在这里插入图片描述

3.3 企业需求

在这里插入图片描述

二、SpringCloud

在这里插入图片描述

兼容性

在这里插入图片描述

三、服务拆分及远程调用

1. 服务拆分

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

1.1 服务拆分注意事项

在这里插入图片描述

1.2 导入服务拆分 Demo

在这里插入图片描述

2. 远程调用

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

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

在这里插入图片描述

2.2 远程调用方式分析

在这里插入图片描述

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

在这里插入图片描述

② 服务远程调用 RestTemplate

在这里插入图片描述


总结

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

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/163626.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【qemu逃逸】华为云2021-qemu_zzz

前言 虚拟机用户名:root 无密码 设备逆向 经过逆向分析,可得实例结构体大致结构如下: 其中 self 指向的是结构体本身,cpu_physical_memory_rw 就是这个函数的函数指针。arr 应该是 PCI 设备类结构体没啥用,就直接用…

MySQL -- 索引

MySQL – 索引 文章目录 MySQL -- 索引一、索引简介1.简介2.索引效率的案例 二、认识磁盘1.磁盘2.结论3.磁盘随机访问(Random Access)与连续访问(Sequential Access) 三、MySQL 与磁盘交互基本单位1.基本单位2.MySQL中的数据管理 五、索引的理解1.索引案例2.单页mysql page3.管…

kimera论文阅读

文章目录 功能构成:Kimera线程A. Kimera-VIO:B. Kimera-RPGO:C. Kimera-Mesher:D. Kimera-Semantics:E.调试工具 功能构成: Kimera包括四个关键模块: Kimera-VIO的核心是基于gtsam的VIO方法[45],使用IMUpreintegration和无结构视觉因子[27]…

【数据结构】败者树的建树与比较过程

文章目录 前置知识归并段 建树过程比较过程疑问为什么比较次数减少了?如果某个归并段的元素一直获胜,没有元素了怎么办?处理方法 1处理方法 2 前置知识 归并段 外部排序算法通常用于处理大规模数据,其中数据量远超过计算机内存的…

致:CSGO游戏搬砖人的一封信

最近大家还在坚持操作CSGO游戏搬砖项目不? 这个项目虽是稳赚项目,但也有行情好和行情不好的时候,平台的大中小各种活动的举办,都会对我们的项目造成一定影响。行情的上下波动势必然会影响卡价的波动,影响选品的快慢&a…

多模态论文阅读之BLIP

BLIP泛读 TitleMotivationContributionModel Title BLIP: Bootstrapping Language-Image Pre-training for Unified Vision-Language Understanding and Generation Motivation 模型角度:clip albef等要么采用encoder-base model 要么采用encoder-decoder model.…

Springboot中解析JSON字符串(jackson库ObjectMapper解析JSON字符串)

1、ObjectMapper与JSONObject比较 1、ObjectMapper属于jackson库的一部分,JSONObject属于alibaba的fastjson,两者各有优劣,可根据自己的系统环境选择使用哪种技术。 2、目前来看,Jackson社区相对活跃,Spring MVC和Spring Boot都…

关于涉及频谱分辨率的一些问题以及FFT幅度谱数值矫正问题的梳理

问题 在研究matlab的FFT函数的时候发现了如下问题:对于信号 y e j 2 π f 1 t e j 2 π f 2 t e j 2 π f 3 t ye^{j2\pi f_1t}e^{j2\pi f_2t}e^{j2\pi f_3t} yej2πf1​tej2πf2​tej2πf3​t 其中 f 1 500 H z f_1500Hz f1​500Hz, f 2 505 H z…

二百零一、Flink——Flink配置状态后端运行后报错:Can not create a Path from an empty string

一、目的 在尚硅谷学习用Flink配置状态后端的项目中,运行报错Exception in thread "main" java.lang.IllegalArgumentException: Can not create a Path from an empty string 二、Flink的状态后端(state backend)类型 (一)Memo…

2000-2022年上市公司专利申请、创新绩效数据

2000-2022年上市公司专利申请、创新绩效数据 1、时间:2000-2022年 2、指标:年份、股票代码、股票简称、行业名称、行业代码、省份、城市、区县、行政区划代码、城市代码、区县代码、首次上市年份、上市状态、专利申请总量、发明专利申请总量、实用新型…

如何在Linux环境搭建SVN服务器并实现公网访问

文章目录 前言1. Ubuntu安装SVN服务2. 修改配置文件2.1 修改svnserve.conf文件2.2 修改passwd文件2.3 修改authz文件 3. 启动svn服务4. 内网穿透4.1 安装cpolar内网穿透4.2 创建隧道映射本地端口 5. 测试公网访问6. 配置固定公网TCP端口地址6.1 保留一个固定的公网TCP端口地址6…

IPEmotion的NVH噪声测试模块——坎贝尔图

德国IPETRONIK的IPEmotion软件除了可对之前介绍的热管理试验及热管理台架试验、电性能试验和道路试验等各种进行基本的温度、模拟量和数字信号的采集分析外,其专业版、开发版及分析版还支持噪声分析模块。该模块支持噪声数据离线后处理,包括Campbell图操…