《Spring Cloud微服务架构开发实战》_董超笔记

本文围绕Spring Cloud展开,介绍了服务治理,其能方便微服务实例上下线、提升应用弹性,具备可用性、负载均衡等优点。还阐述了客户端负载均衡工具Ribbon的使用及原理,以及声明式Web Service客户端Feign,可让Web Service调用更简单。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

服务治理

一、服务治理说明

1、方便微服务实例的上线与下线,实现服务快速进行水平扩展。

2、为微服务架构提升应用弹性,当其中一个应用的一个服务提供者实例不可用或者出现问题时,服务治理可及时发现问题,在调度消费者时可以绕开有问题的实例,将应用的影响降低到最低。

二、服务治理优点

1、可用性:支持动态的服务实例集群环境,任何服务实例可随时上线与下线。服务消费者只需知道服务名称即可调用相应服务,而无需知道服务提供者的物理地址.

2、负载均衡:可提供动态的负载均衡功能,并将所有的请求动态地分布到所管理的所有服务实例中进行处理。

3、应用弹性:服务治理的客户端会定时从服务治理服务器中复制一份服务实例信息缓存到本地中,这样即使当服务治理服务器不可用时,服务消费者也可使用本地的缓存区访问相应的服务,而不至于中断服务。

4、高可用性集群:可构建服务治理集群,通过互相注册机制,将每个治理服务所管辖的服务信息列表进行交换,是服务治理服务用友更高的可用性。

客户端负载均衡--Ribbon

1、修改服务消费方,增加依赖:

<dependency>

            <groupId>org.springframework.cloud</groupId>

            <artifactId>spring-cloud-starter-ribbon</artifactId>

        </dependency>

2、访问服务的入口类增加如下配置:

//增加@LoadBalanced,使得restTemplate具有负载均衡功能

    @LoadBalanced

3、实现原理步骤:

(1)Ribbon首先根据其所在Zone优先选择一个负载较小的Eureka服务器;

(2)定期从Eureka服务器更新,并过滤服务实例列表;

(3)根据指定的负载均衡策略,从可用的服务实例列表中选择一个;

(4)然后使用改地址,通过rest客户端进行服务调用。

Feign

15:02

Feign是一个声明式的Web Service客户端,它的目的就是让Web Service调用更加简单。Feign提供了http请求模板,通过编写简单的接口并插入注解,就可以完成HTTP请求的参数、格式、地址、等信息的声明。通过feign代理请求,我们只需要像调用方法一样调用它就可以完成微服务请求及相关处理。

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

zhouhaitao_cherry

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值