server:
port: 9006
spring:
application:
name: cloud-zuul-wangbiao
zipkin:
base-url: http://localhost:9411/
#字符编码
http:
encoding:
charset: UTF-8
enabled: true
force: true
eureka:
instance:
instance-id: cloud-zuul-wangbiao
#服务端的示例名称
hostname: cloud-zuul-wangbiao
client:
#不向注册中心注册自己 true向注册中心注册自己 false 不向注册中心注册自己
register-with-eureka: true
# false不需要检索服务 true需要检索服务 集群时需要检索服务
fetch-registry: true
service-url:
defaultZone: http://eureka7001.com:7001/eureka
#spring-cloud-starter-netflix-zuul已经包含了spring-boot-starter-actuator,因此不需再次引入
#查看路由设置
http://localhost:9006/actuator/routes
查看filters端点
http://localhost:9006/actuator/filters
management:
endpoints:
web:
exposure:
include: "*"
zuul:
#1 重写指定微服务的访问路径
routes:
cloud-pay-wangbiao: /wangbiao/**
2忽略指定微服务 使用“*”可忽略所有微服务,多个指定微服务以半角逗号分隔。此时通过网关访问忽略的服务是访问不到的
ignored-services: cloud-pay-wangbiao
3 忽略所有微服务,只路由指定微服务: 只有cloud-pay-wangbiao服务路由到/wangbiao/**
ignored-services : "*"
routes:
cloud-pay-wangbiao: /wangbiao/**
4 路由别名
routes:
route-name: #路由别名,无其他意义,与例1效果一致
service-id: cloud-pay-wangbiao
path: /wangbiao/**
#(不推荐使用)
5、指定path和URL 此例将http://ZUULHOST:ZUULPORT/wang/映射到http://localhost:8081/。同时由于并非用service-id定位服务,所以也无法使用负载均衡功能。
#只要访问 /wang/**路径下所有,都会映射到http://127.0.0.1:8081/下面的路径
#例如 http://localhost:9006/wang/wangbiao/payServer/3 会映射到http://localhost:8081/wangbiao/payServer/3
routes:
route-name:
path: /wang/**
6、即指定path和URL,又保留Zuul的Hystrix、Ribbon特性
routes:
route-name: #路由别名,无其他意义,与例1效果一致
service-id: cloud-pay-wangbiao
path: /wangbiao/**
#ribbon:
eureka:
enable: false #为Ribbon禁用Eureka
#rest-demo:
ribbon:
listOfServers: localhost:8085,localhost:8081
7、路由前缀 全局路由 由下面的服务可以看出前缀都是wangbiao
prefix: /wangbiao
#默认为true 除前缀 false不去除前缀
stripPrefix: true
routes:
第一种配置方式
#http://localhost:9006/wangbiao/cloud-pay-wangbiao/xdlysk/ss
cloud-pay-wangbiao: /xdlysk/**
#http://localhost:9006/wangbiao/cloud-user-wangbiao/user/user
cloud-user-wangbiao: /user/**
#第二种配置方式
routes:
microservice1:
#http://localhost:9006/wangbiao/xdlysk/ss 最终路由请求的是http://localhost:8081/xdlysk/ss
path: /xdlysk/**
serviceId: cloud-pay-wangbiao
#局部服务不需要去除前缀
stripPrefix: false
microservice2:
#http://localhost:9006/wangbiao/cloud-user-wangbiao/user/user 最终路由请求的是http://localhost:8085/user/user
path: /user/**
serviceId: cloud-user-wangbiao
#局部服务去除前缀
stripPrefix: true
8、忽略某些微服务中的某些路径
ignoredPatterns: /**/xdlysk/* #忽略所有包含/xdlysk/的地址请求
routes:
route-demo:
service-Id: cloud-pay-wangbiao
path: /wangbiao/**
#超时一般在客户端设置
#ribbon:
ConnectTimeout: 50000
# 请求处理的超时时间
ReadTimeout: 50000
Ribbon在应用启动的时候就执行饿加载
eager-load:
enabled: true
默认Zuul的路由方式是: zuul的主机:zuul的端口号/服务列表 http://ZUULHOST:ZUULPORT/serviceId/**。