zuul学习

1、zuul可以代理界面所需的后端服务,可以解决CORS(Cross-Origion-Resource-Sharing)和认证问题(authentication)问题

2、zuul是使用ribbon来进行负载均衡,转发定位服务。

3、zuul的所有请求都是在Hystrix命令下执行的,一旦发现断路器打开,则不再尝试联系该服务。

4、zuul的回退:默认情况下,经过zuul的请求都会包裹Hystrix,默认有断路器的功能。

zuul的使用:

1、访问一个服务:providerservice名称的服务:

使用zuul访问:

最原始的测试:在zuul的端口后面加上服务的名称,然后再是映射的路径

2、在配置文件设置简化访问服务的名称:

比如上面的providerservice简化为pro来进行访问:(1)第一种方式

 (2)第二种方式:

/*表示只匹配一个,/**k可以匹配多层路径,无论多少层都可以匹配。

(3)第三种方式

指的注意的一点是:以上三种方式不能负载均衡

实现负载均衡的配置:

但是上面的配置在ribbon中需要禁用Eurake。

那么如何解决既实现URL又负载均衡的方式,解决方案是使用正则表达式来配置;

注意此时zuul的配置是最简单的那个:

但是我们需要修改要调用服务的版本,要按照正则式的格式来写:

测试:

 zuul的回退注意事项:

(1)使用正则表达式来表示zuul,是上面的那种,但是有个问题,就是我们最初使用zuul来访问服务的时候,是不行的。

即如果使用了正则,我们再访问链接:是报错的。

只有恢复了最初即第一种方式才可以的才可以。

原文地址:https://www.cnblogs.com/fengli9998/p/8528184.html