目录:
一、微服务概述 二、spring cloud 技术栈三、springcloud-服务治理四、负载均衡(Ribbon)五、熔断保护(Hystrix)六、 Feign七、服务网关(Zuul) 八、总结回顾
1.1:什么是微服务
为适应企业的业务发展,提高软件研发的生产力,降低软件研发的成本,软件架构也作了升级和优化,将一个独立的系统拆分成若干个小的服务,每个小服务运行在不同的进程中,服务与服务之间采用http轻量协议传输数据,每个服务所拥有的功能具有独立性强、低耦合的特点,这样的设计就实现了单个服务的高内聚,服务与服务之间的低耦合效果,这样一个一个的小服务就是微服务,基于这种设计的系统架构即微服务架构。
1.2:微服务的优点
1.3:微服务的缺点
1.4:微服务系统架构图解

二、Spring Cloud技术栈
1:微服务技术栈

2.2:Spring Cloud是什么
2.3:Spring Cloud 技术栈

3.1:什么是服务治理?

3.2:Eureka server 与 Eureka client

3.3:Eureka 服务治理调用过程

3.4:Eureka server 代码实现
3.4.1:新建一个springboot工程并在 pom 文件中添加依赖
3.4.2:配置 application 文件
3.4.3:在启动类中添加@EnableEurekaServer注解支持
完成这一步之后,一个 eureka 服务治理的服务端就已经搭建完毕了。
eureka-server UI 界面:

3.5:Eureka Client 代码实现
3.5.1:添加 jar 包依赖
3.5.2:配置 application 文件
3.5.3:在启动类中添加服务发现注解支持
3.6:多台 Eureka-server 的情况:
需要保持相同的服务名称 并且 eureka-server 之间相互注册,实现高可用。


4.1:Ribbon 介绍
4.2:Ribbon 的执行流程:

4.3:Ribbon 的使用
4.3.1:添加依赖
4.3.2:在启动类中注入 RestTemplate并添加@LoadBalanced注解
4.3.3:将要被调用的服务的方法
第一台服务:
第二台服务:
4.3.4:使用 RestTemplate 进行调用
5.1:什么是容错保护
容错保护是指微服务在执行过程中出现错误并从错误中恢复的能力。微服务容错性不好很容易导致雪崩效应。微服务的雪崩效应表现在服务与服务之间调用,当其中一个服务无法提供服务可能导致其他服务也宕掉,比如:登录服务调用用户信息服务查询用户信息,由于用户信息服务无法服务导致登录服务一直等待,导致关联的服务在调用登录服务时都处于一直等待的状态而无法提供服务即是微服务的雪崩效应。
5.2:Spring Cloud Hystrix

5.3:Hystrix 的使用
5.3.1:添加jar包依赖
5.3.2:在启动类中添加@EnableHystrix注解支持
5.3.2:在调用接口的方法上指定容错的处理方法
6.1:Feign 的介绍
Spring Cloud Feign是基于Netflix feignFeign是开发的声明式、模板化的HTTP客户端并且整合了Spring Cloud Ribbon和Spring Cloud Hystrix,Feign可以帮助我们更快捷、优雅地调用HTTP API。
通常在企业中服务与服务之间调用一般都是使用 feign 的方式进行调用的,这样便于管理和维护,也对调用了什么系统的哪些接口一目了然。
6.2:Feign 的应用
6.2.1:引入jar包依赖
6.2.2:开启容错保护支持,设置为false时,调用出错时容错方法不会执行
6.2.3:在启动类上添加@EnableFeignClients注解支持
6.2.4:定义feign接口并指定容错处理的方法
1.注解 @FeignClient 中的value值为调用服务的服务名,fallbackFactory指定容错处理类
3.当服务调用出错时,一般都会打印报错信息
6.2.4:使用定义的feign接口调用
7.1:什么是服务网关
7.2:Spring Cloud Zuul 介绍
Zuul网关,不仅提供对外服务访问,微服务也可以通过zuul请求其他微服务。
Zuul 对请求转发图解:

7.3:Spring Cloud Zuul 的使用
7.3.1:引入jar包依赖
7.3.2:配置路由
7.3.3:定义一个filter类继承ZuulFilter,对请求进行检验拦截
2.filterOrder()方法设置执行顺序,数字越大,优先级越低。
3.shouldFilter()方法设置过滤器是否开启
4.在run()方法中编写具体的校验规则,如:校验登录token,对指定请求路径放行等
7.3.3:在启动类中添加@EnableZuulProxy注解支持

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
如需转载请保留出处:https://bianchenghao.cn/bian-cheng-ri-ji/58196.html