上一篇:SpringCloud—(7)Hystrix断路器
1.什么是Zuul?
Zuul存在于前端和后端之间,客户发起的所有请求都会经过Zuul进行路由和过滤
路由:
用户发起访问请求的时候,Zuul负责将该请求转发到具体的服务实例上,从而实现所有的用户通过统一的入口进行资源访问。
过滤:
可以对某些请求进行过滤,如:不允许通过某个网址访问到真实的项目资源。
项目中将Zuul注册到Eureka之后,就可以从Eureka上获取到注册的其他服务。我们在访问项目的某个服务的时候,经由Zuul再跳转到具体的服务实例中。
2.使用Zuul?
SpringCloud几个组件用法基本上步骤一致:
1)添加依赖
2)配置文件中进行相应功能配置
3)启动类上添加组件支持(一般为Enable……例如:@EnableHystrixDashboard、@EnableZuulProxy……)
Zuul的用法也是这样:
- 添加依赖
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-zuul</artifactId>
<version>1.4.7.RELEASE</version>
</dependency>
2.路由匹配
2.1 原本要访问SpringCloud-provider-order
下的数据,现在用/myPro/**
来进行访问
zuul:
routes:
myProject.serviceId: SpringCloud-provider-order
myProject.path: /myPro/**
2.2 不让用户通过SpringCloud-provider-order
来访问服务
zuul:
routes:
ignored-services: SpringCloud-provider-order
2.3 隐藏全部的真是项目访问路径
zuul:
routes:
ignored-services: "*"
2.3 设置公共前缀
zuul:
routes:
prefix: /myProject