本实验目的是解决服务与服务之间的`负载均衡`。
#### 知识点
* `Ribbon`基础
* `Ribbon`引入项目改造
#### 实验内容
非会员用户在学习前请下载上个实验的代码: (如果对会员保存环境等服务感兴趣,欢迎去会员页面了解详情:[vip](https://www.lanqiao.cn/vip))
~~~bash
wget https://labfile.oss.aliyuncs.com/courses/1360/source-code-4.zip
unzip source-code-4.zip
~~~
前面我们在用户和电影微服务中,我们不难发现。第二节实验中的服务调用地址硬编码的问题通过实验四的 Eureka 服务注册与发现解决了,但是在调用过程中的负载均衡却没有得以解决。
难道得在电影微服务和用户微服务之间加个`NGINX`做负载均衡吗?听起来是可行的,但如果有`10000+`服务,那这个`NGINX`的配置得有多复杂……
一般来说,提到负载均衡,大家一般很容易想到浏览器 ->`NGINX`\-> 反向代理多个`Tomcat`这样的架构图——业界管这种负载均衡模式叫`”服务器端负载均衡”`,因为此种模式下,负载均衡算法是`NGINX`提供的,而`NGINX`部署在服务器端。
本节所讲的`Ribbon`则是一个`客户端侧`负载均衡组件——通俗地说,就是集成在客户端(服务消费者一侧),并提供负载均衡算法的一个组件。
- 微服务开发框架 SpringCloud
- 单体应用
- 如何解决单体应用架构中存在的问题
- 如何实现微服务架构以及技术选型
- Spring Cloud 特点
- 开始使用 Spring Cloud 实战微服务
- 快速搭建开发脚手架
- 编写服务提供者-用户微服务
- 编写服务消费者【电影微服务】
- 整合 Spring Boot Actuator
- 开始整合
- 微服务注册与发现
- 编写服务发现服务
- 注册微服务至 Eureka Server
- 更新服务提供者 (用户微服务)
- 更新服务消费者 (电影微服务)
- 查看注册结果
- Ribbon 客户端负载均衡
- Ribbon 简介
- 引入 Ribbon
- Ribbon 入门
- Feign 声明式 REST 调用
- 改造项目
- Hystrix 容错处理
- 实现容错的手段
- Hystrix 简介
- 开始使用
- 测试
- Zuul 网关
- 网关是什么
- Spring Cloud Zuul 介绍
- Zuul 入门使用
- 网关测试
- Spring Cloud Config 配置管理
- 配置中心的作用
- Spring Cloud Config 简介
- Spring Cloud Config 使用
- Sleuth 与 Zipkin 结合图形化展示
- 分布式追踪相关基础概念
- Spring Cloud Sleuth 介绍及使用
- Zipin 简介
- Docker 入门
- 云原生概念
- Docker 容器介绍
- Docker 常用命令
- 微服务运行在 Docker 之上
- Dockerfile 及其常见指令介绍
- 改造 Eureka Server 微服务
- Docker Compose 编排微服务
- 安装 Compose
- Compose 快速入门
- Compose 编排 SpringCloud微服务
- 将 Eureka 等微服务运行在 Docker 容器中
- Docker-Compose 编排文件的编写
- 通过 Docker Compose 启动、停止
- Compose编排Spring Cloud微服务2
- Docker-Compose 来部署一个双节点的 Eureka 集群
