hystrix+zuul

hystrix:

熔断:请求直接返回,不走网络请求,保持服务器之间通信,不影响其他服务
降级:每次调用挂掉的服务,返回一个提示信息,服务恢复后,在手动添加,这就是降级
用法:
ribbon:
pom.xml加入依赖

org.springframework.cloud
spring-cloud-starter-netflix-hystrix

启动类加入@EnableHystrix注解开启Hystrix
方法上加上@HystrixCommand注解。该注解对该方法创建了熔断器的功能,并指定了fallbackMethod熔断方法,熔断方法直接返回
return ResultEntity.error(“服务器异常…”);
feign:
在配置文件加以下代码:feign.hystrix.enabled=true
在service层FeignClient的加入fallbackk的指定类
在创建一个类继承这个接口
package com.qpx.upmsnacosfeign.service;

import com.qpx.common.dto.UserDto;
import com.qpx.common.vo.ResultEntity;
import org.springframework.stereotype.Component;

@Component
public class UserServiceHystrix implements UserService{
@Override
public ResultEntity getUserList(UserDto userDto) {
return ResultEntity.error(“服务器哪去了…”);
}
}

Zuul网关

zuul是什么 zuul 是netflix开源的一个API Gateway 服务器, 本质上是一个web servlet应用。Zuul在云平台上提供动态路由,监控
Zuul的主要功能是路由转发和过滤器
zuul默认和Ribbon结合实现了负载均衡的功能
Zuul网关的核心是一系列的过滤器
在zuul中过滤器分为四种:
1.PRE Filters(前置过滤器):当请求会路由转发到具体后端服务器前执行的过滤器,比如鉴权过滤器,日志过滤器,还有路由选择过滤器
2.ROUTING Filters (路由过滤器):该过滤器作用是把请求具体转发到后端服务器上,一般是通过Apache HttpClient 或者 Netflix Ribbon把请求发送到具体的后端服务器上
3.POST Filters(后置过滤器):当把请求路由到具体后端服务器后执行的过滤器;场景有添加标准http 响应头,收集一些统计数据(比如请求耗时等),写入请求结果到请求方等。
4.ERROR Filters(错误过滤器):当上面任何一个类型过滤器执行出错时候执行该过滤器
zuul1.0的工作原理:
在这里插入图片描述
Zuul网关的作用

网关有以下几个作用:

统一入口:未全部为服务提供一个唯一的入口,网关起到外部和内部隔离的作用,保障了后台服务的安全性。

鉴权校验:识别每个请求的权限,拒绝不符合要求的请求。

动态路由:动态的将请求路由到不同的后端集群中。

减少客户端与服务端的耦合:服务可以独立发展,通过网关层来做映射。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

Carl God

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

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

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

打赏作者

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

抵扣说明:

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

余额充值