尚硅谷springcloud2020day7(p44-53)

今天是2020-12-09
总算开始正常学习了,害。
一。openfeign使用
想要使用openfeign完成微服务调用,你需要:
1.pom文件中引入openfeign依赖
2.主启动类标注@EnableFeignClients
3.创建接口PaymentFeignService,添加注解@component、@FeignClient
4.完成@FeignClient(value=“目标服务名”),然后添加与目标服务的控制器中路径一致的方法,启动各个模块,访问,即可完成远程调用
二。openfeign注意事项
feign客户端在调用服务端的方法时,有时服务端会超时,但是客户端默认等待一秒,所以需要开启超时控制的配置,yml文件中:
feign:
client:
config:
default:
connectTimeOut: 10000
readTimeOut: 10000,如果这两个超时时间不是同时配置则会以ribbon的配置为准。
三。openfeign日志
日志级别:
1.NONE,默认级别,不显示任何日志
2.BASIC,记录请求方法,url,响应状态码,执行时间
3.HEADRES,在BASIC的基础上还有请求和响应的头信息。
4.FULL,在HEADRES的基础上还有请求和响应的正文以及元数据
使用步骤:
1.创建配置类FeignConfig,添加注解@configuration,添加代码@Bean
Logger.Level feignLoggerLevel(){
return Logger.Level.FULL;
}
启用最高级别日志
2.application.yml中:
logging:
level:
com.cfy.springcloud.service.PaymentFeignService: debug
开启对目标feign接口的监控
访问方法即可看到详细日志
四。Hystrix
当服务之间互相调用过多,就会导致调用链过长,一旦某个环节出错可能导致整体崩溃。Hystrix,就可以避免因为一个依赖出错而导致级联故障,通过提供熔断器来实现:当请求一个服务超过熔断器配置的超时时间以后,返回配置的降级方法-也就是备选的响应方案,而不是导致调用者陷入长时间的等待或者抛出调用者无法处理的异常,可以保证调用者的线程不会被长时间占用,从而避免一个依赖故障而蔓延到上层依赖导致无法正常响应,从而导致整体服务雪崩。
五。服务降级
如果服务不能被正常调用就给调用者返回一个备选的可用响应,触发降级的情况:
1.服务出现异常
2.服务已经被熔断
3.服务调用超时
4.线程池或者信号量打满
服务熔断及限流后续再分析

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值