springcloud配置方法总结

本文总结了Spring Cloud的相关知识点,包括Eureka的数据结构——双层Map,讲解了Hystrix的线程隔离和服务降级机制,介绍了Feign的使用以及Zuul作为微服务网关的角色。此外,还提及了ES6中的Let和Const变量声明。

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

eureka的数据结构:双层map

Map<“service-provider”(服务id),map<“localhost:service-provider:8081”(服务实例id),instance(服务实例对象-元数据)>>

ribbon选择provider方式是轮循
RoundRobinRule 轮循算法

Spring Cloud 小总结

Hystrix

<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-netflix-hystrix</artifactId>
</dependency>
@LoadBalanced//开启ribbon负载均衡
@EnableCircuitBreaker//启用hystrix
微服务雪崩问题:
问题原因:服务调用链较长,其中一个服务出错会导致整个线程资源得不到释放,在有线的线程池中很容易会将线程资源耗尽。最关键的点在于出错的那一个服务
解决手段:线程隔离,服务降级(服务熔断)。
线程隔离:就是hystrix帮你创建维护一个线程池 接收到的请求都交给这个线程池处理。
服务降级:快速返回一个自定义的预期的值 @HystrixCommand//(fallbackMethod=“queryByIdfallback”)//降级注解
服务熔断:阻止失效的请求执行

Feign

consumer注释

org.springframework.cloud
spring-cloud-starter-openfeign

@EnableFeignClients // 开启feign客户端
编写feigh的客户端接口 @FeignClient(value = “service-provider”) // 标注该类是一个feign接口
feign对hytrix的支持
使用@component将fallbackfactory全局降级的类添加到spring中
在feign客户端指定一下这个类: @FeignClient(value=“service-provider”,fallbackFactory=UserClientFallback.class)

Zuul

网关

org.springframework.cloud
spring-cloud-starter-netflix-eureka-client

配置:
server:
port: 10010 #服务端口
spring:
application:
name: api-gateway #指定服务名
zuul:
routes:
service-provider: # 这里是路由id,随意写
path: /service-provider/** # 这里是映射路径
url: http://127.0.0.1:8081 # 映射路径对应的实际url地址

ES6语法指南

Let:声明局部变量
Const:声明常量
如果使用const定义一个对象就不能指向新的对象因为地址变了但是可以更改对象里面的属性

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值