您好,登录后才能下订单哦!
这篇文章主要为大家展示了“Zuul如何实现网关转发”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“Zuul如何实现网关转发”这篇文章吧。
上图为一个微服务框架的简单示例,当有一个HTTP请求发送到服务器的时候,其实是先经过了Nginx的,再经过了网关,这里的网关就担任了拦截过滤的作用,既然拦截和过滤了,肯定就涉及到了请求的转发
转发我大致例了以下五种转发方式:
在spring_cloud的配置文件application.yml 文件中加入以下配置:
server: port: 8888 #服务端口 spring: application: name: app-zuul-gateway #指定服务名 eureka: client: service-url: defaultZone: http://127.0.0.1:8100/eureka/ #注册到eureka中的地址 register-with-eureka: true fetch-registry: true instance: prefer-ip-address: true #将自己的ip地址注册到Eureka服务中 ip-address: 127.0.0.1 #ip地址 zuul: # 方式一:path+serviceId routes: #定义服务转发规则 abcs: #abcs这个名字任意取的 path: /order/** #配置请求URL的请求规则 serviceid: app-order #eureka中服务的id
跳转示例 :
http://localhost:8888/order/order2/201810300001
http://localhost:8888/order就相当于指定了eureka中id为app-order的微服务,后面在接上他本身的参数,就可以正常使用了
zuul: routes: #定义服务转发规则 app-order: /order/**
跳转示例 :
http://localhost:8888/order/order2/201810300001
和方法一一样,http://localhost:8888/order就相当于指定了eureka中id为app-order的微服务,后面在接上他本身的参数,就可以正常使用了
zuul: routes: #定义服务转发规则 abcs: path: /order/** url: http://127.0.0.1:8091 #真正的微服务地址,path匹配的请求都转发到这里
跳转示例 :
http://localhost:8888/order/order2/201810300001
上面的和方法一样,http://localhost:8888/order就相当于指定了eureka中id为app-order的微服务,后面在接上他本身的参数,就可以正常使用了
zuul: prefix: /order2 strip-prefix: false routes: app-order: /order/**
跳转示例 :
http://localhost:8888/order2/app-order/201810300001
访问Zuul的/order2/app-order/201810300001路径,请求将会被转发到app-order 的order2/201810300001
zuul: routes: app-order: path: /order2/** strip-prefix: false
跳转示例 :
http://localhost:8888/order2/201810300001
访问Zuul的/order2/201810300001路径,请求将会被转发到app-order 的order2/201810300001
以上是“Zuul如何实现网关转发”这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注亿速云行业资讯频道!
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。