说明:本文仅作为本人学习<<深入理解Spring Cloud与微服务构建>>一书的学习笔记,所有代码案例及文字描述均参考该书,不足之处,请留言指正,不胜感激.
一.在Zuul上配置熔断器
上一篇提到zuul的起步依赖集成了ribbon和hystrix,接下来我们来看看如何在网关上实现熔断功能.
首先我们需要了解在Zuul中实现熔断功能需要实现ZuulFallbackProvider的接口.实现该接口有两个方法,一个是getRoute()方法,用于指定熔断功能应用于哪个路由服务;另一个方法fallbackResponse()为进入熔断功能时执行的逻辑.具体实现可以参看如下代码:
/**
* 网关熔断配置
*
* @author zhyu
* @version v1.0
* @date 2018年07月03日 19:54:28
*/
@Component
public class MyZuulFallbackProvider implements ZuulFallbackProvider {
@Override
public String getRoute() {
//实现对producer-server服务的熔断
return "producer-server";
//return "*"; 实现对所有的路由服务的熔断
}
@Override
public ClientHttpResponse fallbackResponse() {
return new ClientHttpResponse()

本文详细介绍了如何在Spring Cloud的Zuul网关上配置熔断器,通过实现ZuulFallbackProvider接口来实现服务的容错保护。在未启动producer-server服务的情况下,通过网关访问接口,成功触发了熔断器。此外,还讲解了如何在Zuul中创建自定义过滤器,通过继承ZuulFilter并实现相应方法,实现了权限校验的功能。通过实例展示了无token和带token访问时的不同响应。
最低0.47元/天 解锁文章
779





