SpringCloud 2.x之网关Spring Cloud Gateway

Spring Cloud Gateway是由spring官方基于Spring5.0、Spring Boot2.x、Project Reactor等技术开发的网关,目的是代替原先版本中的Spring Cloud Netfilx Zuul,目前Netfilx已经开源了Zuul2.0,但Spring没有考虑集成,而是推出了自己开发的Spring Cloud GateWay。该项目提供了一个构建在Spring Ecosystem之上的API网关,旨在提供一种简单而有效的途径来发送API,并向他们提供交叉关注点,例如:安全性,监控、埋点,限流等。(具体可以查看官网http://spring.io/projects/spring-cloud-gateway)

SpringCloud Gateway工作原理图:

1、新建项目sc-gateway,对应的pom.xml文件如下

可以看到spring cloud gateway是从spring cloud 2.x后才有的

2、新建springboot启动类

3、编写配置文件application.yml

Spring Cloud Gateway提供了两种配置路由规则的方式:

方式一、通过@Bean自定义RouteLocator

方式二、通过属于文件或者yml文件配置

4、启动项目,并验证

访问http://127.0.0.1:8600/jianshu转发到https://www.jianshu.com/

访问http://127.0.0.1:8600/baidu转发到https://www.baidu.com/

访问http://127.0.0.1:8600/sina转发到https://www.sina.com.cn/

源码:

在讲解zuul时,有读者说没有过滤器的网关是没有灵魂的。接下来找个时间说说网关的过滤器filter。

看到这里了,不关注一下么

JAVA乐园

一码不扫,何扫天下

  • 发表于:
  • 原文链接https://kuaibao.qq.com/s/20181120G0AKJE00?refer=cp_1026
  • 腾讯「云+社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 yunjia_community@tencent.com 删除。

扫码关注云+社区

领取腾讯云代金券