Spring Cloud Gateway是Spring官方基于Spring 5.0,Spring Boot 2.0和Project Reactor等技术开发的网关,Spring Cloud Gateway旨在为微服务架构提供一种简单而有效的统一的API路由管理方式。Spring Cloud Gateway作为Spring Cloud生态系中的网关,目标是替代Netflix ZUUL,其不仅提供统一的路由方式,并且基于Filter链的方式提供了网关基本的功能,例如:安全,监控/埋点,和限流等。Spring Cloud大型企业分布式微服务云架构源码请加一七九一七四三三八零

入门案例

接下来,介绍一下简单使用SpringCloud Gateway路由功能

创建项目

新建一个项目,项目种加入SpringCloud Gateway依赖,完整pom如下:

<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"><modelVersion>4.0.0</modelVersion><groupId>com.dalaoyang</groupId><artifactId>springcloud_gateway</artifactId><version>0.0.1-SNAPSHOT</version><packaging>jar</packaging><name>springcloud_gateway</name><description>springcloud_gateway</description><parent><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-parent</artifactId><version>2.0.0.RELEASE</version><relativePath/> <!-- lookup parent from repository --></parent><properties><project.build.sourceEncoding>UTF-8</project.build.sourceEncoding><project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding><java.version>1.8</java.version><spring-cloud.version>Finchley.RC1</spring-cloud.version></properties><dependencies><dependency><groupId>org.springframework.cloud</groupId><artifactId>spring-cloud-starter-gateway</artifactId></dependency><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-devtools</artifactId><scope>runtime</scope></dependency><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-test</artifactId><scope>test</scope></dependency></dependencies><dependencyManagement><dependencies><dependency><groupId>org.springframework.cloud</groupId><artifactId>spring-cloud-dependencies</artifactId><version>${spring-cloud.version}</version><type>pom</type><scope>import</scope></dependency></dependencies></dependencyManagement><build><plugins><plugin><groupId>org.springframework.boot</groupId><artifactId>spring-boot-maven-plugin</artifactId></plugin></plugins></build></project>复制代码

SpringBoot主程序

在类中配置路由

主程序中加入了一种配置路由的方法,利用@Bean的方式自定义RouteLocator。

package com.dalaoyang;import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.cloud.gateway.route.RouteLocator;
import org.springframework.cloud.gateway.route.builder.RouteLocatorBuilder;
import org.springframework.context.annotation.Bean;@SpringBootApplication
public class SpringcloudGatewayApplication {public static void main(String[] args) {SpringApplication.run(SpringcloudGatewayApplication.class, args);}@Beanpublic RouteLocator customRouteLocator(RouteLocatorBuilder builder) {return builder.routes().route(r -> r.path("/jianshu").uri("http://www.jianshu.com/u/128b6effde53")).build();}}复制代码

在配置文件中配置:

server:port: 8888spring:application:name: gateway-servicecloud:gateway:routes:- id: dalaoyanguri: http://www.dalaoyang.cn/predicates:- Path=/dalaoyang/**- id: juejinuri: https://juejin.im/user/5aa50b96f265da23866f836epredicates:- Path=/juejin/**复制代码

到这里配置完成了。

spring cloud微服务分布式云架构-Gateway入门 1相关推荐

  1. spring cloud微服务分布式云架构-Gateway入门

    Spring Cloud Gateway是Spring官方基于Spring 5.0,Spring Boot 2.0和Project Reactor等技术开发的网关,Spring Cloud Gatew ...

  2. (二)spring cloud微服务分布式云架构 - 整合企业架构的技术点

    spring cloud本身提供的组件就很多,但我们需要按照企业的业务模式来定制企业所需要的通用架构,那我们现在需要考虑使用哪些技术呢? 下面我针对于spring cloud微服务分布式云架构做了以下 ...

  3. spring cloud微服务分布式云架构 - 整合企业架构的技术点

    spring cloud本身提供的组件就很多,但我们需要按照企业的业务模式来定制企业所需要的通用架构,那我们现在需要考虑使用哪些技术呢? 下面我针对于spring cloud微服务分布式云架构做了以下 ...

  4. (二)spring cloud微服务分布式云架构-整合企业架构的技术点

    spring cloud本身提供的组件就很多,但我们需要按照企业的业务模式来定制企业所需要的通用架构,那我们现在需要考虑使用哪些技术呢?Spring Cloud大型企业分布式微服务云架构源码请加一七九 ...

  5. spring cloud微服务分布式云架构-整合企业架构的技术点

    spring cloud本身提供的组件就很多,但我们需要按照企业的业务模式来定制企业所需要的通用架构,那我们现在需要考虑使用哪些技术呢?完整项目的源码来源 技术支持一七九一七四三三八零 下面我针对于s ...

  6. spring cloud微服务分布式云架构 - 整合企业架构的技术点(二)

    点击上面 免费订阅本账号! 本文作者:it菲菲 原文:https://yq.aliyun.com/articles/672231 点击阅读全文前往 spring cloud本身提供的组件就很多,但我们 ...

  7. spring cloud微服务分布式云架构 - Spring Cloud集成项目简介

    Spring Cloud集成项目有很多,下面我们列举一下和Spring Cloud相关的优秀项目,我们的企业架构中用到了很多的优秀项目,说白了,也是站在巨人的肩膀上去整合的.在学习Spring Clo ...

  8. Spring Cloud微服务分布式云架构—集成项目简介

    Spring Cloud集成项目有很多,下面我们列举一下和Spring Cloud相关的优秀项目,我们的企业架构中用到了很多的优秀项目,说白了,也是站在巨人的肩膀上去整合的.在学习Spring Clo ...

  9. spring cloud微服务分布式云架构 - Spring Cloud简介

    Spring Cloud是一系列框架的有序集合.利用Spring Boot的开发模式简化了分布式系统基础设施的开发,如服务发现.注册.配置中心.消息总线.负载均衡.断路器.数据监控等(这里只简单的列了 ...

  10. spring cloud微服务分布式云架构 - common-service 项目构建过程

    欢迎大家和我一起学习spring cloud构建微服务云架构,我这边会将近期研发的spring cloud微服务云架构的搭建过程和精髓记录下来,帮助更多有兴趣研发spring cloud框架的朋友,大 ...

最新文章

  1. 面试AI算法岗,你被要求复现顶会了嘛?
  2. java 字符正则匹配算法_算法之字符串——正则表达式匹配
  3. java apt anno_Android Studio中使用apt
  4. java 最少使用(lru)置换算法_LRU算法详解及最简单的Java实现
  5. 小试MemSQL (The World's Fastest Database?)
  6. r spgm 语言_Spatial Simultaneous Equations空间联立方程 的R package和经典文献
  7. pr抖动插件_某宝价值135元的PS/AE/PR全套插件合集,一键安装,大神必备这一套就够了【第10期】...
  8. HIVE: 自定义TextInputFormat (旧版MapReduceAPI ok, 新版MapReduceAPI实现有BUG?)
  9. 关闭tomcat报错Cannot allocate memory
  10. 笑谈ArcToolbox (5) 非我族类
  11. oracle创建表空间并赋予权限
  12. xrd连续扫描和步进扫描_一种提高xrd实验精度的方法
  13. T检验和F检验\自由度
  14. 关于修复弹窗被360弹窗拦截器拦截的问题的解决案例的分享
  15. 猴子定律--如何跳出你深陷的棋局看趋势
  16. 微服务 杜家豪_搞好“微建设微服务”也是大业绩
  17. malloc()动态分配内存
  18. 网页制作之HTML+CSS布局
  19. 全体起立!广州大学数据库综合设计实验
  20. java线程中yield()和join()的区别

热门文章

  1. SPSS Sobel检验(图文+数据集)【SPSS 044期】
  2. java test log4j main_Java 为程序创建日志系统
  3. 【C++】STL-函数对象(仿函数)
  4. 360无痕浏览器_功能强大好用的浏览器
  5. android studio线性渐变,使用Kotlin实现文字渐变TextView的代码
  6. php遍历path树,php 递归遍历文件树代码_PHP教程
  7. oracle表数据的导出到excel文件,文件怎么导出到excel表格数据库-如何导出oracle数据库中某张表到excel...
  8. php中函数怎么调用参,php – 将参数传递给可调用函数
  9. 高淇Struts2.0教程之视频笔记(4)
  10. function传值传字符串,然后Ajax url传值的时候传这个装字符串的变量