1
0
mirror of https://github.com/Snailclimb/JavaGuide synced 2025-06-16 18:10:13 +08:00

[docs fix] springcloud入门标题格式问题

This commit is contained in:
guide 2022-02-27 15:39:34 +08:00
parent 8e415b7fa1
commit ee3772dc66
8 changed files with 97 additions and 111 deletions

View File

@ -1,43 +1,41 @@
## 👏 重大更新!!!重磅!
> [JavaGuide 官方知识星球](https://www.yuque.com/docs/share/8a30ffb5-83f3-40f9-baf9-38de68b906dc)来啦!!!如果你需要专属面试小册/一对一交流/简历修改/专属求职指南/学习打卡,不妨花 3 分钟左右看看星球的详细介绍: [JavaGuide 知识星球详细介绍](https://www.yuque.com/docs/share/8a30ffb5-83f3-40f9-baf9-38de68b906dc) (一定要确定自己真的需要再加入,一定要看完详细介绍之后再加我)。
- JavaGuide 在线阅读版新版推荐👍https://javaguide.cn/
- JavaGuide 在线阅读版(老版):https://snailclimb.gitee.io/javaguide/#/
- [《JavaGuide 面试突击版》PDF 版本下载](https://mp.weixin.qq.com/s?__biz=Mzg2OTA0Njk0OA==&mid=100029614&idx=1&sn=62993c5cf10265cb7018db7f1ec67250&chksm=4ea1fb6579d67273499b7243641d4ef372decd08047bfbb6dfb5843ef81c7ccba209086cf345#rd)
<a href="https://t.1yb.co/GXLF"><img src="https://img-blog.csdnimg.cn/2f61f3e2d1f2427da977340919e41616.png" style="margin: 0 auto;width:850px" /></a>
> 1. **介绍**:关于 JavaGuide 的相关介绍请看:[关于 JavaGuide 的一些说明](https://www.yuque.com/snailclimb/dr6cvl/mr44yt) 。
> 2. **贡献指南** :欢迎参与 [JavaGuide的维护工作](https://github.com/Snailclimb/JavaGuide/issues/1235),这是一件非常有意义的事情。
> 3. **PDF版本** [《JavaGuide 面试突击版》PDF 版本](https://mp.weixin.qq.com/s?__biz=Mzg2OTA0Njk0OA==&mid=100029614&idx=1&sn=62993c5cf10265cb7018db7f1ec67250&chksm=4ea1fb6579d67273499b7243641d4ef372decd08047bfbb6dfb5843ef81c7ccba209086cf345#rd) 。
> 4. **图解计算机基础** [图解计算机基础 PDF 下载](https://mp.weixin.qq.com/s?__biz=Mzg2OTA0Njk0OA==&mid=100021725&idx=1&sn=2db9664ca25363139a81691043e9fd8f&chksm=4ea19a1679d61300d8990f7e43bfc7f476577a81b712cf0f9c6f6552a8b219bc081efddb5c54#rd) 。
> 5. **知识星球** : 简历指导/Java学习/面试指导/面试小册。欢迎加入[我的知识星球](https://sourl.cn/psyWaE) 。
> 6. **面试专版** :准备面试的小伙伴可以考虑面试专版:[《Java面试进阶指北 》](https://www.yuque.com/docs/share/f37fc804-bfe6-4b0d-b373-9c462188fec7) (质量很高,专为面试打造,星球用户免费)
> 7. **转载须知** 以下所有文章如非文首说明皆为我Guide哥的原创转载在文首注明出处如发现恶意抄袭/搬运,会动用法律武器维护自己的权益。让我们一起维护一个良好的技术创作环境!⛽️
<p align="center">
<div align="center">
<p>
<a href="https://www.yuque.com/docs/share/8a30ffb5-83f3-40f9-baf9-38de68b906dc">
<img src="./media/sponsor/xingqiu.png" style="margin: 0 auto; width: 850px;" />
</a>
</p>
<p>
<a href="https://github.com/Snailclimb/JavaGuide" target="_blank">
<img src="https://img-blog.csdnimg.cn/img_convert/1c00413c65d1995993bf2b0daf7b4f03.png#pic_center" width="" />
</a>
</p>
<p align="center">
<a href="https://javaguide.cn/"><img src="https://img.shields.io/badge/阅读-read-brightgreen.svg" alt="阅读"></a>
<p>
<a href="https://javaguide.cn/"><img src="https://img.shields.io/badge/阅读-read-brightgreen.svg" alt="阅读" /></a>
<img src="https://img.shields.io/github/stars/Snailclimb/JavaGuide" alt="stars" />
<img src="https://img.shields.io/github/forks/Snailclimb/JavaGuide" alt="forks" />
<img src="https://img.shields.io/github/issues/Snailclimb/JavaGuide" alt="issues" />
</p>
<h3 align="center">推荐</h3>
<table>
<tbody>
<tr>
<td align="center" valign="middle">
<a href="https://www.yuque.com/docs/share/8a30ffb5-83f3-40f9-baf9-38de68b906dc">
<img src="./media/sponsor/xingqiu.png" style="margin: 0 auto;width:850px" /></a>
</td>
</tr>
</tbody>
</table>
</div>
> 1. **面试专版** :准备面试的小伙伴可以考虑面试专版:[《Java 面试进阶指北 》](https://www.yuque.com/docs/share/f37fc804-bfe6-4b0d-b373-9c462188fec7) (质量很高,专为面试打造,配合 JavaGuide 食用)。
> 1. **知识星球** :专属面试小册/一对一交流/简历修改/专属求职指南,欢迎加入 [JavaGuide 知识星球](https://www.yuque.com/docs/share/8a30ffb5-83f3-40f9-baf9-38de68b906dc)(点击链接即可查看星球的详细介绍,一定一定一定确定自己真的需要再加入,一定一定要看完详细介绍之后再加我)。
> 2. **转载须知** 以下所有文章如非文首说明为转载皆为我Guide 哥)的原创,转载在文首注明出处,如发现恶意抄袭/搬运,会动用法律武器维护自己的权益。让我们一起维护一个良好的技术创作环境!
推荐你通过在线阅读网站进行阅读,体验更好,速度更快!
- [JavaGuide 在线阅读网站(新版,推荐👍)](https://javaguide.cn/)
- [JavaGuide 在线阅读版(老版)](https://snailclimb.gitee.io/javaguide/#/)
你可能需要:
- [项目介绍](./docs/javaguide/intro)
- [贡献指南](./docs/javaguide/contribution-guideline)
- [常见问题](./docs/javaguide/faq)
- [项目代办](./docs/javaguide/todo)
## Java
### 基础

View File

@ -13,12 +13,11 @@ category: 分布式
![](https://guide-blog-images.oss-cn-shenzhen.aliyuncs.com/xingqiu/image-20220211231206733.png)
专属面试小册/一对一交流/简历修改/专属求职指南,欢迎加入我的[知识星球](https://www.yuque.com/docs/share/8a30ffb5-83f3-40f9-baf9-38de68b906dc)
如果你需要专属面试小册/一对一交流/简历修改/专属求职指南/学习打卡,不妨花 3 分钟左右看看星球的详细介绍: [JavaGuide 知识星球详细介绍](https://www.yuque.com/docs/share/8a30ffb5-83f3-40f9-baf9-38de68b906dc) (一定要确定自己真的需要再加入,一定要看完详细介绍之后再加我)
星球目前的定价为 **159/年**,即将调整为 **199/年**。如果的认可 JavaGuide相信我并且需要星球提供的专属服务那欢迎你加入我的星球。你可以添加我的私人微信领取星球专属优惠券限时 **100/年** 加入。一定要备注“**星球优惠券**”!
![](https://guide-blog-images.oss-cn-shenzhen.aliyuncs.com/xingqiu/image-20220211231926486.png)
**用心做内容,割韭菜。加油!!!**
**用心做内容,真心希望帮助到你,拒绝知识付费割韭菜。加油!!!**
知识星球详细介绍请看(一定一定一定确定自己真的需要再加入,一定一定要看完详细介绍之后再加我):[https://www.yuque.com/docs/share/8a30ffb5-83f3-40f9-baf9-38de68b906dc](https://www.yuque.com/docs/share/8a30ffb5-83f3-40f9-baf9-38de68b906dc)。

View File

@ -10,14 +10,13 @@
![](https://guide-blog-images.oss-cn-shenzhen.aliyuncs.com/xingqiu/image-20220211231206733.png)
专属面试小册/一对一交流/简历修改/专属求职指南,欢迎加入我的[知识星球](https://www.yuque.com/docs/share/8a30ffb5-83f3-40f9-baf9-38de68b906dc)
如果你需要专属面试小册/一对一交流/简历修改/专属求职指南/学习打卡,不妨花 3 分钟左右看看星球的详细介绍: [JavaGuide 知识星球详细介绍](https://www.yuque.com/docs/share/8a30ffb5-83f3-40f9-baf9-38de68b906dc) (一定要确定自己真的需要再加入,一定要看完详细介绍之后再加我)
星球目前的定价为 **159/年**,即将调整为 **199/年**。如果的认可 JavaGuide相信我并且需要星球提供的专属服务那欢迎你加入我的星球。你可以添加我的私人微信领取星球专属优惠券限时 **100/年** 加入。一定要备注“**星球优惠券**”!
![](https://guide-blog-images.oss-cn-shenzhen.aliyuncs.com/xingqiu/image-20220211231926486.png)
**用心做内容,不割韭菜。加油!!!**
知识星球详细介绍请看(一定一定一定确定自己真的需要再加入,一定一定要看完详细介绍之后再加我):[https://www.yuque.com/docs/share/8a30ffb5-83f3-40f9-baf9-38de68b906dc](https://www.yuque.com/docs/share/8a30ffb5-83f3-40f9-baf9-38de68b906dc)。
**用心做内容,真心希望帮助到你,拒绝知识付费割韭菜。加油!!!**

View File

@ -15,16 +15,13 @@ tag:
![](https://guide-blog-images.oss-cn-shenzhen.aliyuncs.com/xingqiu/image-20220211231206733.png)
专属面试小册/一对一交流/简历修改/专属求职指南,欢迎加入我的[知识星球](https://www.yuque.com/docs/share/8a30ffb5-83f3-40f9-baf9-38de68b906dc)
如果你需要专属面试小册/一对一交流/简历修改/专属求职指南/学习打卡,不妨花 3 分钟左右看看星球的详细介绍: [JavaGuide 知识星球详细介绍](https://www.yuque.com/docs/share/8a30ffb5-83f3-40f9-baf9-38de68b906dc) (一定要确定自己真的需要再加入,一定要看完详细介绍之后再加我)
星球目前的定价为 **159/年**,即将调整为 **199/年**。如果的认可 JavaGuide相信我并且需要星球提供的专属服务那欢迎你加入我的星球。你可以添加我的私人微信领取星球专属优惠券限时 **100/年** 加入。一定要备注“**星球优惠券**”!
![](https://guide-blog-images.oss-cn-shenzhen.aliyuncs.com/xingqiu/image-20220211231926486.png)
**用心做内容,不割韭菜。加油!!!**
知识星球详细介绍请看(一定一定一定确定自己真的需要再加入,一定一定要看完详细介绍之后再加我):[https://www.yuque.com/docs/share/8a30ffb5-83f3-40f9-baf9-38de68b906dc](https://www.yuque.com/docs/share/8a30ffb5-83f3-40f9-baf9-38de68b906dc)。
**用心做内容,真心希望帮助到你,拒绝知识付费割韭菜。加油!!!**

View File

@ -15,11 +15,9 @@ action:
## 👍官方知识星球
专属面试小册/一对一交流/简历修改/专属求职指南。欢迎加入 JavaGuide [知识星球](https://www.yuque.com/docs/share/8a30ffb5-83f3-40f9-baf9-38de68b906dc),星球详细介绍:[https://www.yuque.com/docs/share/8a30ffb5-83f3-40f9-baf9-38de68b906dc](https://www.yuque.com/docs/share/8a30ffb5-83f3-40f9-baf9-38de68b906dc)。
[JavaGuide 官方知识星球](https://www.yuque.com/docs/share/8a30ffb5-83f3-40f9-baf9-38de68b906dc)来啦!!!如果你需要专属面试小册/一对一交流/简历修改/专属求职指南/学习打卡,不妨花 3 分钟左右看看星球的详细介绍: [JavaGuide 知识星球详细介绍](https://www.yuque.com/docs/share/8a30ffb5-83f3-40f9-baf9-38de68b906dc) (一定要确定自己真的需要再加入,一定要看完详细介绍之后再加我)
**最优质良心的 Java 面试交流星球,多次被官方推荐!**
**真诚欢迎准备面试的小伙伴加入星球一起交流!真心希望能够帮助到更多小伙伴!相信一定不会让你失望的!**
**用心做内容,真心希望帮助到你,拒绝知识付费割韭菜。加油!!!**
## 👉推荐阅读

View File

@ -13,12 +13,11 @@ Netty 相关的面试题为我的[知识星球](https://www.yuque.com/docs/share
![](https://guide-blog-images.oss-cn-shenzhen.aliyuncs.com/xingqiu/image-20220211231206733.png)
专属面试小册/一对一交流/简历修改/专属求职指南,欢迎加入我的[知识星球](https://www.yuque.com/docs/share/8a30ffb5-83f3-40f9-baf9-38de68b906dc)
如果你需要专属面试小册/一对一交流/简历修改/专属求职指南/学习打卡,不妨花 3 分钟左右看看星球的详细介绍: [JavaGuide 知识星球详细介绍](https://www.yuque.com/docs/share/8a30ffb5-83f3-40f9-baf9-38de68b906dc) (一定要确定自己真的需要再加入,一定要看完详细介绍之后再加我)
星球目前的定价为 **159/年**,即将调整为 **199/年**。如果的认可 JavaGuide相信我并且需要星球提供的专属服务那欢迎你加入我的星球。你可以添加我的私人微信领取星球专属优惠券限时 **100/年** 加入。一定要备注“**星球优惠券**”!
![](https://guide-blog-images.oss-cn-shenzhen.aliyuncs.com/xingqiu/image-20220211231926486.png)
**用心做内容,割韭菜。加油!!!**
**用心做内容,真心希望帮助到你,拒绝知识付费割韭菜。加油!!!**
知识星球详细介绍请看(一定一定一定确定自己真的需要再加入,一定一定要看完详细介绍之后再加我):[https://www.yuque.com/docs/share/8a30ffb5-83f3-40f9-baf9-38de68b906dc](https://www.yuque.com/docs/share/8a30ffb5-83f3-40f9-baf9-38de68b906dc)。

View File

@ -4,8 +4,6 @@
>
> 授权转载自https://juejin.im/post/5de2553e5188256e885f4fa3
首先我给大家看一张图,如果大家对这张图有些地方不太理解的话,我希望你们看完我这篇文章会恍然大悟。
![Spring Cloud 总体架构](https://my-blog-to-use.oss-cn-beijing.aliyuncs.com/2019-11/spring-cloud总体架构.jpg)
@ -100,7 +98,7 @@
当然,可以充当服务发现的组件有很多:`Zookeeper` `Consul` `Eureka` 等。
更多关于 `Eureka` 的知识(自我保护,初始注册策略等等)可以自己去官网查看,或者查看我的另一篇文章 [深入理解 Eureka](<https://juejin.im/post/5dd497e3f265da0ba7718018>)。
更多关于 `Eureka` 的知识(自我保护,初始注册策略等等)可以自己去官网查看,或者查看我的另一篇文章 [深入理解 Eureka](https://juejin.im/post/5dd497e3f265da0ba7718018)。
## 负载均衡之 Ribbon
@ -124,6 +122,7 @@ public boolean judge(@RequestBody Request request) {
return restTemplate.postForObject(url, request, Boolean.class);
}
```
如果你对源码感兴趣的话,你会发现上面我们所讲的 `Eureka` 框架中的 **注册**、**续约** 等,底层都是使用的 `RestTemplate`
### 为什么需要 Ribbon
@ -160,9 +159,9 @@ public boolean judge(@RequestBody Request request) {
负载均衡,不管 `Nginx` 还是 `Ribbon` 都需要其算法的支持,如果我没记错的话 `Nginx` 使用的是 轮询和加权轮询算法。而在 `Ribbon` 中有更多的负载均衡调度算法,其默认是使用的 `RoundRobinRule` 轮询策略。
* **`RoundRobinRule`**:轮询策略。`Ribbon` 默认采用的策略。若经过一轮轮询没有找到可用的 `provider`,其最多轮询 10 轮。若最终还没有找到,则返回 `null`
* **`RandomRule`**: 随机策略,从所有可用的 `provider` 中随机选择一个。
* **`RetryRule`**: 重试策略。先按照 `RoundRobinRule` 策略获取 `provider`,若获取失败,则在指定的时限内重试。默认的时限为 500 毫秒。
- **`RoundRobinRule`**:轮询策略。`Ribbon` 默认采用的策略。若经过一轮轮询没有找到可用的 `provider`,其最多轮询 10 轮。若最终还没有找到,则返回 `null`
- **`RandomRule`**: 随机策略,从所有可用的 `provider` 中随机选择一个。
- **`RetryRule`**: 重试策略。先按照 `RoundRobinRule` 策略获取 `provider`,若获取失败,则在指定的时限内重试。默认的时限为 500 毫秒。
🐦🐦🐦 还有很多,这里不一一举:chestnut:了,你最需要知道的是默认轮询算法,并且可以更换默认的负载均衡算法,只需要在配置文件中做出修改就行。
@ -270,7 +269,7 @@ public List<Xxx> getXxxx() {
}
```
但是,我查阅了一些博客,发现他们都将 **熔断****降级** 的概念混淆了,以我的理解,**降级是为了更好的用户体验,当一个方法调用异常时,通过执行另一种代码逻辑来给用户友好的回复**。这也就对应着 `Hystrix`**后备处理** 模式。你可以通过设置 `fallbackMethod` 来给一个方法设置备用的代码逻辑。比如这个时候有一个热点新闻出现了我们会推荐给用户查看详情然后用户会通过id去查询新闻的详情但是因为这条新闻太火了(比如最近什么*易对吧),大量用户同时访问可能会导致系统崩溃,那么我们就进行 **服务降级** ,一些请求会做一些降级处理比如当前人数太多请稍后查看等等。
但是,我查阅了一些博客,发现他们都将 **熔断****降级** 的概念混淆了,以我的理解,**降级是为了更好的用户体验,当一个方法调用异常时,通过执行另一种代码逻辑来给用户友好的回复**。这也就对应着 `Hystrix`**后备处理** 模式。你可以通过设置 `fallbackMethod` 来给一个方法设置备用的代码逻辑。比如这个时候有一个热点新闻出现了,我们会推荐给用户查看详情,然后用户会通过 id 去查询新闻的详情,但是因为这条新闻太火了(比如最近什么\*易对吧),大量用户同时访问可能会导致系统崩溃,那么我们就进行 **服务降级** ,一些请求会做一些降级处理比如当前人数太多请稍后查看等等。
```java
// 指定了后备方法调用
@ -296,7 +295,7 @@ public News getHystrixNews(@PathVariable("id") int id) {
> ZUUL 是从设备和 web 站点到 Netflix 流应用后端的所有请求的前门。作为边界服务应用ZUUL 是为了实现动态路由、监视、弹性和安全性而构建的。它还具有根据情况将请求路由到多个 Amazon Auto Scaling Groups亚马逊自动缩放组亚马逊的一种云计算方式 的能力
在上面我们学习了 `Eureka` 之后我们知道了 *服务提供者* 是 *消费者* 通过 `Eureka Server` 进行访问的,即 `Eureka Server`*服务提供者* 的统一入口。那么整个应用中存在那么多 *消费者* 需要用户进行调用,这个时候用户该怎样访问这些 *消费者工程* 呢?当然可以像之前那样直接访问这些工程。但这种方式没有统一的消费者工程调用入口,不便于访问与管理,而 Zuul 就是这样的一个对于 *消费者* 的统一入口。
在上面我们学习了 `Eureka` 之后我们知道了 _服务提供者_ 是 _消费者_ 通过 `Eureka Server` 进行访问的,即 `Eureka Server`_服务提供者_ 的统一入口。那么整个应用中存在那么多 _消费者_ 需要用户进行调用,这个时候用户该怎样访问这些 _消费者工程_ 呢?当然可以像之前那样直接访问这些工程。但这种方式没有统一的消费者工程调用入口,不便于访问与管理,而 Zuul 就是这样的一个对于 _消费者_ 的统一入口。
> 如果学过前端的肯定都知道 Router 吧,比如 Flutter 中的路由VueReact 中的路由,用了 Zuul 你会发现在路由功能方面和前端配置路由基本是一个理。:smile: 我偶尔撸撸 Flutter。
@ -392,9 +391,9 @@ zuul:
这样关于 auto 的请求我们就可以过滤掉了。
> ** 代表匹配多级任意路径
> \*\* 代表匹配多级任意路径
>
> *代表匹配一级任意路径
> \*代表匹配一级任意路径
#### 敏感请求头屏蔽
@ -447,8 +446,6 @@ public class PreRequestFilter extends ZuulFilter {
}
```
```java
// lombok的日志
@Slf4j
@ -613,12 +610,12 @@ public class RouteFilter extends ZuulFilter {
这篇文章中我带大家初步了解了 `Spring Cloud` 的各个组件,他们有
* `Eureka` 服务发现框架
* `Ribbon` 进程内负载均衡器
* `Open Feign` 服务调用映射
* `Hystrix` 服务降级熔断器
* `Zuul` 微服务网关
* `Config` 微服务统一配置中心
* `Bus` 消息总线
- `Eureka` 服务发现框架
- `Ribbon` 进程内负载均衡器
- `Open Feign` 服务调用映射
- `Hystrix` 服务降级熔断器
- `Zuul` 微服务网关
- `Config` 微服务统一配置中心
- `Bus` 消息总线
如果你能这个时候能看懂文首那张图,也就说明了你已经对 `Spring Cloud` 微服务有了一定的架构认识。

View File

@ -13,12 +13,11 @@ category: Java面试指北
![](https://guide-blog-images.oss-cn-shenzhen.aliyuncs.com/xingqiu/image-20220211231206733.png)
专属面试小册/一对一交流/简历修改/专属求职指南,欢迎加入我的[知识星球](https://www.yuque.com/docs/share/8a30ffb5-83f3-40f9-baf9-38de68b906dc)
如果你需要专属面试小册/一对一交流/简历修改/专属求职指南/学习打卡,不妨花 3 分钟左右看看星球的详细介绍: [JavaGuide 知识星球详细介绍](https://www.yuque.com/docs/share/8a30ffb5-83f3-40f9-baf9-38de68b906dc) (一定要确定自己真的需要再加入,一定要看完详细介绍之后再加我)
星球目前的定价为 **159/年**,即将调整为 **199/年**。如果的认可 JavaGuide相信我并且需要星球提供的专属服务那欢迎你加入我的星球。你可以添加我的私人微信领取星球专属优惠券限时 **100/年** 加入。一定要备注“**星球优惠券**”!
![](https://guide-blog-images.oss-cn-shenzhen.aliyuncs.com/xingqiu/image-20220211231926486.png)
**用心做内容,割韭菜。加油!!!**
**用心做内容,真心希望帮助到你,拒绝知识付费割韭菜。加油!!!**
知识星球详细介绍请看(一定一定一定确定自己真的需要再加入,一定一定要看完详细介绍之后再加我):[https://www.yuque.com/docs/share/8a30ffb5-83f3-40f9-baf9-38de68b906dc](https://www.yuque.com/docs/share/8a30ffb5-83f3-40f9-baf9-38de68b906dc)。