diff --git a/dev-protocol-springcloud/NetflixHystrix.md b/dev-protocol-springcloud/NetflixHystrix.md
deleted file mode 100644
index 1609f5e..0000000
--- a/dev-protocol-springcloud/NetflixHystrix.md
+++ /dev/null
@@ -1,29 +0,0 @@
-## SpringCloud Netflix Hystrix
-
-
-### SpringCloud Netflix Hystrix 概览
-
-
-### 使用注解方式实现服务的容错、降级
-
-
-### 使用编程方式实现服务的容错、降级
-
-
-### 编程方式开启 Hystrix 请求缓存
-
-
-### 注解方式开启 Hystrix 请求缓存
-
-
-### 编程方式应用 Hystrix 请求合并
-
-
-### 注解方式应用 Hystrix 请求合并
-
-### OpenFeign 集成 Hystrix 开启后备模式
-
-
-### 使用 Hystrix 监控面板监测客户端容错
-
-### SpringCloud Netflix Hystrix 容错组件总结
\ No newline at end of file
diff --git a/dev-protocol-springcloud/SpringCloud项目介绍.md b/dev-protocol-springcloud/SpringCloud项目介绍.md
index a944c0c..a48e422 100644
--- a/dev-protocol-springcloud/SpringCloud项目介绍.md
+++ b/dev-protocol-springcloud/SpringCloud项目介绍.md
@@ -23,13 +23,15 @@
## 通用工程模块
- 通用服务 - [身份拦截]
- -
+ - [dev-protocol-springcloud-project-mvc-config](dev-protocol-springcloud-project-mvc-config)
+ - [dev-protocol-springcloud-project-service-config](dev-protocol-springcloud-project-service-config)
+ - [dev-protocol-springcloud-project-service-sdk](dev-protocol-springcloud-project-service-sdk)
- 授权、鉴权中心微服务
- [dev-protocol-springcloud-project-authority-center](dev-protocol-springcloud-project-authority-center)
- 用户账户微服务
-
+ - [dev-protocol-springcloud-project-account-service](dev-protocol-springcloud-project-account-service)
- 商品微服务
-
+ - [dev-protocol-springcloud-project-goods-service](dev-protocol-springcloud-project-goods-service)
- 订单微服务
-
+ -
- 物流微服务
\ No newline at end of file
diff --git a/dev-protocol-springcloud/dev-protocol-springcloud-hystrix/.gitignore b/dev-protocol-springcloud/dev-protocol-springcloud-hystrix/.gitignore
new file mode 100644
index 0000000..5ff6309
--- /dev/null
+++ b/dev-protocol-springcloud/dev-protocol-springcloud-hystrix/.gitignore
@@ -0,0 +1,38 @@
+target/
+!.mvn/wrapper/maven-wrapper.jar
+!**/src/main/**/target/
+!**/src/test/**/target/
+
+### IntelliJ IDEA ###
+.idea/modules.xml
+.idea/jarRepositories.xml
+.idea/compiler.xml
+.idea/libraries/
+*.iws
+*.iml
+*.ipr
+
+### Eclipse ###
+.apt_generated
+.classpath
+.factorypath
+.project
+.settings
+.springBeans
+.sts4-cache
+
+### NetBeans ###
+/nbproject/private/
+/nbbuild/
+/dist/
+/nbdist/
+/.nb-gradle/
+build/
+!**/src/main/**/build/
+!**/src/test/**/build/
+
+### VS Code ###
+.vscode/
+
+### Mac OS ###
+.DS_Store
\ No newline at end of file
diff --git a/dev-protocol-springcloud/dev-protocol-springcloud-hystrix/NetflixHystrix.md b/dev-protocol-springcloud/dev-protocol-springcloud-hystrix/NetflixHystrix.md
new file mode 100644
index 0000000..eae75f6
--- /dev/null
+++ b/dev-protocol-springcloud/dev-protocol-springcloud-hystrix/NetflixHystrix.md
@@ -0,0 +1,45 @@
+## SpringCloud Netflix Hystrix
+
+
+### SpringCloud Netflix Hystrix 概览
+- Hystrix 是什么、设计目标是什么
+ - Hystrix 是一个库,通过添加延迟容忍和容错逻辑,帮助你控制这些分布式服务之间的交互
+ - Hystrix 通过隔离服务之间的访问点、停止级联失败和提供回退选项来实现服务之间的容错
+ - Hystrix 有四大设计目标
+ - 对客户端访问的延迟和故障进行保护和控制
+ - 在复杂的分布式系统中阻止级联故障
+ - 快速失败,快速恢复
+ - 兜底回退,尽可能优雅的降级
+---
+- Hystrix 解决了什么问题
+ - 复杂分布式系统中服务之间存在许多依赖项,依赖项可能会存在故障,如果不做故障隔离整个服务可能会被拖垮
+---
+- Hystrix 是如何实现它的目标的
+ - 对依赖项(服务)进行包装代理,不直接与依赖项交互
+ - 调用超时时间允许自行设定,超时之后立刻熔断报错
+ - 每一个依赖项都在自己的空间内(线程池或信号量隔离),依赖项之间不存在干扰
+ - 请求依赖项失败后,可以选择出错或者是兜底回退
+
+### 使用注解方式实现服务的容错、降级
+
+
+### 使用编程方式实现服务的容错、降级
+
+
+### 编程方式开启 Hystrix 请求缓存
+
+
+### 注解方式开启 Hystrix 请求缓存
+
+
+### 编程方式应用 Hystrix 请求合并
+
+
+### 注解方式应用 Hystrix 请求合并
+
+### OpenFeign 集成 Hystrix 开启后备模式
+
+
+### 使用 Hystrix 监控面板监测客户端容错
+
+### SpringCloud Netflix Hystrix 容错组件总结
\ No newline at end of file
diff --git a/dev-protocol-springcloud/dev-protocol-springcloud-hystrix/pom.xml b/dev-protocol-springcloud/dev-protocol-springcloud-hystrix/pom.xml
new file mode 100644
index 0000000..4cb3698
--- /dev/null
+++ b/dev-protocol-springcloud/dev-protocol-springcloud-hystrix/pom.xml
@@ -0,0 +1,65 @@
+
+
+ 4.0.0
+
+ org.example
+ dev-protocol
+ 1.0-SNAPSHOT
+ ../../pom.xml
+
+
+ dev-protocol-springcloud-hystrix
+
+ dev-protocol-springcloud-hystrix
+ Hystrix 模块
+
+
+ 8
+ 8
+ UTF-8
+
+
+
+
+
+ com.alibaba.cloud
+ spring-cloud-starter-alibaba-nacos-discovery
+
+
+ org.springframework.boot
+ spring-boot-starter-web
+
+
+ org.springframework.cloud
+ spring-cloud-starter-netflix-hystrix
+
+
+ org.projectlombok
+ lombok
+
+
+
+
+
+ ${artifactId}
+
+
+ org.springframework.boot
+ spring-boot-maven-plugin
+
+
+
+ repackage
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/dev-protocol-springcloud/dev-protocol-springcloud-hystrix/src/main/java/org/example/HystrixApplication.java b/dev-protocol-springcloud/dev-protocol-springcloud-hystrix/src/main/java/org/example/HystrixApplication.java
new file mode 100644
index 0000000..81cc008
--- /dev/null
+++ b/dev-protocol-springcloud/dev-protocol-springcloud-hystrix/src/main/java/org/example/HystrixApplication.java
@@ -0,0 +1,17 @@
+package org.example;
+
+import org.springframework.boot.SpringApplication;
+import org.springframework.boot.autoconfigure.SpringBootApplication;
+import org.springframework.cloud.client.circuitbreaker.EnableCircuitBreaker;
+import org.springframework.cloud.client.discovery.EnableDiscoveryClient;
+import org.springframework.cloud.context.config.annotation.RefreshScope;
+
+@SpringBootApplication
+@EnableDiscoveryClient
+@RefreshScope // 刷新配置
+@EnableCircuitBreaker // 启动 Hystrix
+public class HystrixApplication {
+ public static void main(String[] args) {
+ SpringApplication.run(HystrixApplication.class, args);
+ }
+}
\ No newline at end of file
diff --git a/dev-protocol-springcloud/dev-protocol-springcloud-hystrix/src/main/java/org/example/controller/HystrixController.java b/dev-protocol-springcloud/dev-protocol-springcloud-hystrix/src/main/java/org/example/controller/HystrixController.java
new file mode 100644
index 0000000..5203ec1
--- /dev/null
+++ b/dev-protocol-springcloud/dev-protocol-springcloud-hystrix/src/main/java/org/example/controller/HystrixController.java
@@ -0,0 +1,38 @@
+package org.example.controller;
+
+import lombok.extern.slf4j.Slf4j;
+import org.example.hystrix.UseHystrixCommandAnnotation;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.cloud.client.ServiceInstance;
+import org.springframework.web.bind.annotation.GetMapping;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RequestParam;
+import org.springframework.web.bind.annotation.RestController;
+
+import java.util.List;
+
+/**
+ *
Hystrix Controller
+ * */
+@Slf4j
+@RestController
+@RequestMapping("/hystrix")
+public class HystrixController {
+
+ private final UseHystrixCommandAnnotation hystrixCommandAnnotation;
+
+ public HystrixController(UseHystrixCommandAnnotation useHystrixCommandAnnotation) {
+ this.hystrixCommandAnnotation = useHystrixCommandAnnotation;
+ }
+
+ /**
+ * 测试使用注解的方式, 1500ms 是否会进行熔断 -> 关联http测试脚本
+ */
+ @GetMapping("/hystrix-command-annotation")
+ public List getNacosClientInfoUseAnnotation(
+ @RequestParam String serviceId) {
+ log.info("request nacos client info use annotation: [{}], [{}]",
+ serviceId, Thread.currentThread().getName());
+ return hystrixCommandAnnotation.getNacosClientInfo(serviceId);
+ }
+}
diff --git a/dev-protocol-springcloud/dev-protocol-springcloud-hystrix/src/main/java/org/example/hystrix/UseHystrixCommandAnnotation.java b/dev-protocol-springcloud/dev-protocol-springcloud-hystrix/src/main/java/org/example/hystrix/UseHystrixCommandAnnotation.java
new file mode 100644
index 0000000..668833a
--- /dev/null
+++ b/dev-protocol-springcloud/dev-protocol-springcloud-hystrix/src/main/java/org/example/hystrix/UseHystrixCommandAnnotation.java
@@ -0,0 +1,72 @@
+package org.example.hystrix;
+
+import com.netflix.hystrix.contrib.javanica.annotation.HystrixCommand;
+import com.netflix.hystrix.contrib.javanica.annotation.HystrixProperty;
+import lombok.extern.slf4j.Slf4j;
+import org.example.service.NacosClientService4HystrixDemo;
+import org.springframework.cloud.client.ServiceInstance;
+import org.springframework.stereotype.Service;
+
+import java.util.Collections;
+import java.util.List;
+
+/**
+ * 使用 HystrixCommand 注解
+ * */
+@Slf4j
+@Service
+public class UseHystrixCommandAnnotation {
+ private final NacosClientService4HystrixDemo nacosClientService4HystrixDemo;
+
+ public UseHystrixCommandAnnotation(NacosClientService4HystrixDemo nacosClientService4HystrixDemo) {
+ this.nacosClientService4HystrixDemo = nacosClientService4HystrixDemo;
+ }
+
+ @HystrixCommand(
+ // 用于对 Hystrix 命令进行分组, 分组之后便于统计展示于仪表盘、上传报告和预警等等
+ // 内部进行度量统计时候的分组标识, 数据上报和统计的最小维度就是 groupKey
+ groupKey = "NacosClientService",
+ // HystrixCommand 的名字, 默认是当前类的名字, 主要方便 Hystrix 进行监控、报警等
+ commandKey = "NacosClientService",
+ // 舱壁模式
+ threadPoolKey = "NacosClientService",
+ // 后备模式 - 一定要写在当前类中, 要不不生效
+ fallbackMethod = "getNacosClientInfoFallback",
+ // 断路器模式
+ commandProperties = {
+ // 超时时间, 单位毫秒, 超时进 fallback
+ @HystrixProperty(name = "execution.isolation.thread.timeoutInMilliseconds", value = "1500"),
+ // 判断熔断的最少请求数, 默认是10; 只有在一定时间内请求数量达到该值, 才会进行成功率的计算
+ @HystrixProperty(name = "circuitBreaker.requestVolumeThreshold", value = "10"),
+ // 熔断的阈值默认值 50, 表示在一定时间内有50%的请求处理失败, 会触发熔断
+ @HystrixProperty(name = "circuitBreaker.errorThresholdPercentage", value = "10"),
+ },
+ // 舱壁模式
+ threadPoolProperties = {
+ @HystrixProperty(name = "coreSize", value = "30"),
+ @HystrixProperty(name = "maxQueueSize", value = "101"),
+ @HystrixProperty(name = "keepAliveTimeMinutes", value = "2"),
+ @HystrixProperty(name = "queueSizeRejectionThreshold", value = "15"),
+ // 在时间窗口中, 收集统计信息的次数; 在 1440ms 的窗口中一共统计 12 次
+ @HystrixProperty(name = "metrics.rollingStats.numBuckets", value = "12"),
+ // 时间窗口, 从监听到第一次失败开始计时
+ @HystrixProperty(name = "metrics.rollingStats.timeInMilliseconds", value = "1440")
+ }
+ )
+ public List getNacosClientInfo(String serviceId) {
+
+ log.info("use hystrix command annotation to get nacos client info: [{}], [{}]",
+ serviceId, Thread.currentThread().getName());
+ return nacosClientService4HystrixDemo.getNacosClientInfo(serviceId);
+ }
+
+ /**
+ * getNacosClientInfo 的兜底策略 - Hystrix 后备模式
+ * */
+ public List getNacosClientInfoFallback(String serviceId) {
+
+ log.warn("can not get nacos client, trigger hystrix fallback: [{}], [{}]",
+ serviceId, Thread.currentThread().getName());
+ return Collections.emptyList();
+ }
+}
diff --git a/dev-protocol-springcloud/dev-protocol-springcloud-hystrix/src/main/java/org/example/service/NacosClientService4HystrixDemo.java b/dev-protocol-springcloud/dev-protocol-springcloud-hystrix/src/main/java/org/example/service/NacosClientService4HystrixDemo.java
new file mode 100644
index 0000000..4b403d0
--- /dev/null
+++ b/dev-protocol-springcloud/dev-protocol-springcloud-hystrix/src/main/java/org/example/service/NacosClientService4HystrixDemo.java
@@ -0,0 +1,38 @@
+package org.example.service;
+
+import lombok.extern.slf4j.Slf4j;
+import org.springframework.cloud.client.ServiceInstance;
+import org.springframework.cloud.client.discovery.DiscoveryClient;
+import org.springframework.stereotype.Service;
+
+import java.util.List;
+
+@Slf4j
+@Service
+public class NacosClientService4HystrixDemo {
+
+ private final DiscoveryClient discoveryClient;
+
+ public NacosClientService4HystrixDemo(DiscoveryClient discoveryClient) {
+ this.discoveryClient = discoveryClient;
+ }
+
+ /**
+ * 打印 Nacos Client 信息到日志中
+ * */
+ public List getNacosClientInfo(String serviceId) {
+
+ // 测试 UseHystrixCommandAnnotation 的超时
+ try {
+ Thread.sleep(2000);
+ } catch (InterruptedException ex) {
+
+ }
+
+// 测试 NacosClientHystrixCommand 熔断
+// throw new RuntimeException("has some error");
+
+ log.info("request nacos client to get service instance info: [{}]", serviceId);
+ return discoveryClient.getInstances(serviceId);
+ }
+}
diff --git a/dev-protocol-springcloud/dev-protocol-springcloud-hystrix/src/main/resources/bootstrap.yml b/dev-protocol-springcloud/dev-protocol-springcloud-hystrix/src/main/resources/bootstrap.yml
new file mode 100644
index 0000000..3a92e0a
--- /dev/null
+++ b/dev-protocol-springcloud/dev-protocol-springcloud-hystrix/src/main/resources/bootstrap.yml
@@ -0,0 +1,72 @@
+server:
+ port: 8111
+ servlet:
+ context-path: /dev-protocol-springcloud-hystrix
+
+spring:
+ application:
+ name: dev-protocol-springcloud-hystrix # 应用名称也是构成 Nacos 配置管理 dataId 字段的一部分 (当 config.prefix 为空时)
+ cloud:
+ nacos:
+ # 服务注册发现
+ discovery:
+ enabled: true # 如果不想使用 Nacos 进行服务注册和发现, 设置为 false 即可
+ server-addr: 127.0.0.1:8848
+ # server-addr: 127.0.0.1:8848,127.0.0.1:8849,127.0.0.1:8850 # Nacos 服务器地址
+ namespace: 1ccc74ae-9398-4dbe-b9d7-4f9addf9f40c
+ metadata:
+ management:
+ context-path: ${server.servlet.context-path}/actuator
+ # 配置管理
+# config:
+# prefix: imooc-e-commerce
+# file-extension: yaml # 配置内容的数据格式, 默认为 properties
+# enabled: true # 如果不想使用 Nacos 进行配置管理, 设置为 false 即可
+# group: DEFAULT_GROUP # 组, 默认为 DEFAULT_GROUP
+# namespace: 1ccc74ae-9398-4dbe-b9d7-4f9addf9f40c
+# server-addr: 127.0.0.1:8848
+ kafka:
+ bootstrap-servers: 127.0.0.1:9092
+ producer:
+ retries: 3
+ consumer:
+ auto-offset-reset: latest
+ sleuth:
+ sampler:
+ # ProbabilityBasedSampler 抽样策略
+ probability: 1.0 # 采样比例, 1.0 表示 100%, 默认是 0.1
+ # RateLimitingSampler 抽样策略, 设置了限速采集, spring.sleuth.sampler.probability 属性值无效
+ rate: 100 # 每秒间隔接受的 trace 量
+ zipkin:
+ sender:
+ type: kafka # 默认是 web
+ base-url: http://localhost:9411/
+
+# Feign 的相关配置
+feign:
+ # feign 开启 gzip 压缩
+ compression:
+ request:
+ enabled: true
+ mime-types: text/xml,application/xml,application/json
+ min-request-size: 1024
+ response:
+ enabled: true
+ # 禁用默认的 http, 启用 okhttp
+ httpclient:
+ enabled: false
+ okhttp:
+ enabled: true
+ # OpenFeign 集成 Hystrix
+ hystrix:
+ enabled: true
+
+# 暴露端点
+management:
+ endpoints:
+ web:
+ exposure:
+ include: '*'
+ endpoint:
+ health:
+ show-details: always
diff --git a/dev-protocol-springcloud/dev-protocol-springcloud-hystrix/src/main/resources/http/communication.http b/dev-protocol-springcloud/dev-protocol-springcloud-hystrix/src/main/resources/http/communication.http
new file mode 100644
index 0000000..3d3131d
--- /dev/null
+++ b/dev-protocol-springcloud/dev-protocol-springcloud-hystrix/src/main/resources/http/communication.http
@@ -0,0 +1,58 @@
+### 获取 Token
+POST http://127.0.0.1:8000/ecommerce-nacos-client/communication/rest-template
+Content-Type: application/json
+
+{
+ "username": "Qinyi@imooc.com",
+ "password": "25d55ad283aa400af464c76d713c07ad"
+}
+
+
+### 获取 Token, 带有负载均衡
+POST http://127.0.0.1:8000/ecommerce-nacos-client/communication/rest-template-load-balancer
+Content-Type: application/json
+
+{
+ "username": "Qinyi@imooc.com",
+ "password": "25d55ad283aa400af464c76d713c07ad"
+}
+
+
+### 通过 Ribbon 去获取 Token
+POST http://127.0.0.1:8000/ecommerce-nacos-client/communication/ribbon
+Content-Type: application/json
+
+{
+ "username": "Qinyi@imooc.com",
+ "password": "25d55ad283aa400af464c76d713c07ad"
+}
+
+
+### 通过原生 Ribbon Api 去获取 Token
+POST http://127.0.0.1:8000/ecommerce-nacos-client/communication/thinking-in-ribbon
+Content-Type: application/json
+
+{
+ "username": "Qinyi@imooc.com",
+ "password": "25d55ad283aa400af464c76d713c07ad"
+}
+
+
+### 通过 OpenFeign 获取 Token
+POST http://127.0.0.1:8000/ecommerce-nacos-client/communication/token-by-feign
+Content-Type: application/json
+
+{
+ "username": "Qinyi@imooc.com",
+ "password": "25d55ad283aa400af464c76d713c07ad"
+}
+
+
+### 通过原生 Feign Api 获取 Token
+POST http://127.0.0.1:8000/ecommerce-nacos-client/communication/thinking-in-feign
+Content-Type: application/json
+
+{
+ "username": "Qinyi@imooc.com",
+ "password": "25d55ad283aa400af464c76d713c07ad"
+}
diff --git a/dev-protocol-springcloud/dev-protocol-springcloud-hystrix/src/main/resources/http/hystrix.http b/dev-protocol-springcloud/dev-protocol-springcloud-hystrix/src/main/resources/http/hystrix.http
new file mode 100644
index 0000000..594b5b2
--- /dev/null
+++ b/dev-protocol-springcloud/dev-protocol-springcloud-hystrix/src/main/resources/http/hystrix.http
@@ -0,0 +1,35 @@
+### 根据提供的 serviceId 获取实例信息
+GET http://127.0.0.1:8000/dev-protocol-springcloud-hystrix/hystrix/hystrix-command-annotation?serviceId=e-commerce-nacos-client
+Content-Type: application/json
+
+### 根据提供的 serviceId 获取实例信息
+GET http://127.0.0.1:8000/dev-protocol-springcloud-hystrix/hystrix/simple-hystrix-command?serviceId=e-commerce-nacos-client
+Content-Type: application/json
+
+### 根据提供的 serviceId 获取实例信息
+GET http://127.0.0.1:8000/dev-protocol-springcloud-hystrix/hystrix/hystrix-observable-command?serviceId=e-commerce-nacos-client
+Content-Type: application/json
+
+### 根据提供的 serviceId 获取实例信息
+GET http://127.0.0.1:8000/dev-protocol-springcloud-hystrix/hystrix/cache-hystrix-command?serviceId=e-commerce-nacos-client
+Content-Type: application/json
+
+### 根据提供的 serviceId 获取实例信息
+GET http://127.0.0.1:8000/dev-protocol-springcloud-hystrix/hystrix/cache-annotation-01?serviceId=e-commerce-nacos-client
+Content-Type: application/json
+
+### 根据提供的 serviceId 获取实例信息
+GET http://127.0.0.1:8000/dev-protocol-springcloud-hystrix/hystrix/cache-annotation-02?serviceId=e-commerce-nacos-client
+Content-Type: application/json
+
+### 根据提供的 serviceId 获取实例信息
+GET http://127.0.0.1:8000/dev-protocol-springcloud-hystrix/hystrix/cache-annotation-03?serviceId=e-commerce-nacos-client
+Content-Type: application/json
+
+### 根据提供的 serviceId 获取实例信息
+GET http://127.0.0.1:8000/dev-protocol-springcloud-hystrix/hystrix/request-merge
+Content-Type: application/json
+
+### 根据提供的 serviceId 获取实例信息
+GET http://127.0.0.1:8000/dev-protocol-springcloud-hystrix/hystrix/request-merge-annotation
+Content-Type: application/json
diff --git a/dev-protocol-springcloud/dev-protocol-springcloud-hystrix/src/main/resources/http/nacos-client.http b/dev-protocol-springcloud/dev-protocol-springcloud-hystrix/src/main/resources/http/nacos-client.http
new file mode 100644
index 0000000..9a454e9
--- /dev/null
+++ b/dev-protocol-springcloud/dev-protocol-springcloud-hystrix/src/main/resources/http/nacos-client.http
@@ -0,0 +1,13 @@
+### 查询服务实例信息
+GET http://127.0.0.1:8000/ecommerce-nacos-client/nacos-client/service-instance
+Accept: application/json
+
+### 动态从 Nacos Server 中获取配置信息
+GET http://127.0.0.1:8000/ecommerce-nacos-client/nacos-client/project-config
+Accept: application/json
+
+### 查看 Sleuth 跟踪信息
+GET http://127.0.0.1:9001/imooc/ecommerce-nacos-client/sleuth/trace-info
+Accept: application/json
+e-commerce-user: eyJhbGciOiJSUzI1NiJ9.eyJlLWNvbW1lcmNlLXVzZXIiOiJ7XCJpZFwiOjE3LFwidXNlcm5hbWVcIjpcIkltb29jUWlueWlAaW1vb2MuY29tXCJ9IiwianRpIjoiMGIxNzQyYWItMWU3OC00OTZjLWIyNTAtMjNkZGQ1ZGEyZTU1IiwiZXhwIjoxNjI0MjA0ODAwfQ.QKGHzohSHdYDHzUVHpe9gNPUgzfkPwrSbB-WiMWYjLlt2tr9BufzZM8bSt-whb_bd0hKoC6rkYYO0WUVR67uSML-2yaTL1xMIn8GH9Flyig3rpO4vefL3Hp2TXIpwHHa7WlKsLzcUpNk9lxWs2B5k0ICdYCH_jD5Tx6N7CzfSUG9u4fOnVeM9UFE2nX_DURupUh_DKCc2oOoMeyCSR7Ma8-Ab4WQU3r-U0YivR8G1A0kmKOIoTeRhM3LcPuxUPh3rCbrjzMg--fexRGw0O38Qsby6pz-ku2IlTyFXY6_jNOG1BZR34-jBOnaIciP1TExw9bFumeuC2GcowTHJVH1Nw
+token: imooc
diff --git a/dev-protocol-springcloud/学习计划.md b/dev-protocol-springcloud/学习计划.md
new file mode 100644
index 0000000..0162ca8
--- /dev/null
+++ b/dev-protocol-springcloud/学习计划.md
@@ -0,0 +1,97 @@
+## SpringCloud 计划
+
+- 工程模块开发
+ - https://coding.imooc.com/class/chapter/522.html#Anchor
+ - SpringCloud Netflix Hystrix 实现微服务容错
+ - 基于 SpringCloud Stream 构建消息驱动微服务
+ - Seata:分布式事务解决方案
+ - 订单微服务
+ - 物流微服务
+ - 基于 SpringCloud Alibaba Sentinel 实现网关动态限流
+ - 微服务工程部署与整体可用性验证
+ - https://coding.imooc.com/class/chapter/508.html#Anchor
+ - 实践补充
+
+- Nacos
+ - https://coding.imooc.com/class/chapter/611.html#Anchor
+ - Nacos基础核心特性揭秘
+ - 搭建Nacos源码环境
+ - Nacos核心特性实现原理深度剖析
+ - 窥探Nacos内核
+ - 构造热插拔的Nacos插件
+ - 探秘Nacos云原生体系
+
+## 高并发处理
+
+- 高并发
+ - https://coding.imooc.com/class/chapter/604.html#Anchor
+ - 秒杀购物商城基础服务组件
+ - MINIO实现OSS服务
+ - 实现RateLimter限流组件的服务
+ - Redission+Disruptor实现延时队列组件
+ - 通过 Redis + RedLock实现分布式锁的实现组件
+ - 通过XXLJOB分布式任务调度的服务组件
+ - 基于Guava+SpringListener实现异步组件事件总线EventBus机制
+ - 百度开源的分布式高性能的唯一ID生成器UidGenerator
+ - 秒杀购物商城业务服务--秒杀活动服务
+ - 秒杀购物商城业务服务--商品中心
+ - 秒杀购物商城业务服务--订单中心
+
+- 中间件
+ - Redis 使用
+ - MQ 使用
+ - Kafka 使用
+
+- 一轮复习
+ - https://coding.imooc.com/class/856.html
+ - 基础
+ - 框架 Spring, SpringBoot, SpringCloud
+ - Mysql, Redis, Kafka, MQ
+ - 项目
+ - 广告监测项目
+ - 存储
+ - 分布式消息队列治理
+ - 电商项目
+ - 秒杀模块
+ - 业务模块架构
+
+- 二轮复习
+ - https://coding.imooc.com/class/chapter/500.html#Anchor
+ - 分析 Java 线程堆栈
+ - JVM 性能调优
+
+## 大数据
+
+- 综合项目:三度关系推荐系统+数据中台
+- 电商实时数据仓库(湖仓一体)设计与实战
+
+
+## 其他
+- JS 逆向
+- 安卓逆向
+- 渗透
+
+
+## AI - (不建议学, 了解即可)
+- https://class.imooc.com/llmappdev#Anchor
+-
+
+
+- 业务模块架构编写
+- 高并发场景处理
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/pom.xml b/pom.xml
index 5a04683..3d14b7d 100644
--- a/pom.xml
+++ b/pom.xml
@@ -61,6 +61,7 @@
dev-protocol-springcloud/dev-protocol-springcloud-project-service-config
dev-protocol-springcloud/dev-protocol-springcloud-project-service-sdk
dev-protocol-springcloud/dev-protocol-springcloud-project-goods-service
+ dev-protocol-springcloud/dev-protocol-springcloud-hystrix