赞
踩
有点像 nginx 或者 servlet过滤器, 对外隐藏微服务的域名和端口,只需要知道 微服务名字和 uri 即刻访问指定 微服务,方便统一管理
<dependencies> <!--Zuul 网关--> <dependency> <groupId>org.springframework.cloud</groupId> <artifactId>spring-cloud-starter-netflix-zuul</artifactId> </dependency> <!--Eureka客户端--> <dependency> <groupId>org.springframework.cloud</groupId> <artifactId>spring-cloud-starter-netflix-eureka-client</artifactId> </dependency> <dependency> <groupId>org.springframework.cloud</groupId> <artifactId>spring-cloud-dependencies</artifactId> <version>${spring-cloud.version}</version> <type>pom</type> <scope>import</scope> </dependency> </dependencies>
/**
* @author ratel
* @date 2020/4/5
*/
@EnableZuulProxy //标记此应用为 Zuul Gateway
@EnableDiscoveryClient
@EnableEurekaClient
@SpringBootApplication
public class ZuulApplication {
public static void main(String[] args) {
SpringApplication.run(ZuulApplication.class,args);
}
}
spring: application: name: @artifactId@ server: port: 8070 # servlet: # context-path: /zuul # eureka 注册中心配置 eureka: instance: prefer-ip-address: true client: register-with-eureka: true service-url: defaultZone: http://eureka1.ratel.com:8001/eureka/ # 指定路由规则 zuul: routes: # api-a: # path: /order/** #匹配路径 # serviceId: ratel-microservice-order #微服务名字 # url: http://localhost:8082 #重定向,不依赖 eureka #简写 ratel-microservice-order: #微服务名字 path: /order/** #匹配规则 # ignored-services: ratel-microservice-order #忽略掉这个微服务,否则url以 /ratel-microservice-order 为前缀的也会访问 order 服务 logging: level: root: debug
# 指定路由规则
# 匹配优先级 按配置先后循序
zuul:
routes:
api-foward: #微服务名字 或 url 前缀
path: forward:/test #表示将匹配上的 请求转发到当前网关的接口上
不使用网关
使用Zuul网关
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-XQGine4l-1586100144062)(/Users/ratel/Library/Application Support/typora-user-images/image-20200405231532598.png)]
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。