美文网首页
06.`getaway`-网关-`spring-cloud-ge

06.`getaway`-网关-`spring-cloud-ge

作者: 风安峻_ | 来源:发表于2020-09-10 09:43 被阅读0次
1. 依赖
  1. 依赖

    <dependencies>
        <!-- 网关 -->
        <dependency>
            <groupId>org.springframework.cloud</groupId>
            <artifactId>spring-cloud-starter-gateway</artifactId>
        </dependency>
    </dependencies>
    
  2. 说明

    1. 父依赖

      <properties>
          <spring-cloud.version>Hoxton.SR3</spring-cloud.version>
      </properties>
      
      <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>
      
    2. spring-cloud-getaway不使用web作为服务器,而是使用WebFlux(已经依赖,不需要额外添加依赖)作为服务器,++一定不能依赖spring-boot-starter-web++

    3. 需要从注册中心拉取服务,依赖spring-cloud-starter-alibaba-nacos-discovery

      <dependencies>
          <!-- nacos 注册中心 -->
          <dependency>
              <groupId>com.alibaba.cloud</groupId>
              <artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId>
          </dependency>
      </dependencies>
      
  3. spring-cloud-getway 官方文档

2. 配置文件
  1. 主配置文件application.yml

    server:
      # 程序端口
      port: 8185
      
    spring:
      profiles:
        # 注册 application-nacos.yml、application-getway.yml 配置文件
        active: nacos,getaway
    
  2. nacos配置文件application-nacos.yml

    spring:
      application:
        # 注册到 nacos 注册中心的服务名
        name: web-api-getaway
      cloud:
        nacos:
          discovery:
            # nacos 注册中心的地址
            server-addr: 120.25.207.44:8848
    
  3. getaway配置文件application-getaway.yml

    spring:
      cloud:
        # 路由网关配置
        gateway:
          # 设置与服务注册发现组件结合,这样可以采用服务名的路由策略
          discovery:
            locator:
              enabled: true
          routes:
            # 采用自定义路由 ID(有固定用法,不同的 id 有不同的功能
            # 可以配置很多的路由信息,但是每个路由都有一个唯一的 id 来标识
            - id: web-service
              # 采用 LoadBalanceClient 方式请求,以 lb:// 开头定位到微服务中的某个服务,后面的是注册在 Nacos 上的服务名
              uri: lb://web-service
              # Predicate 翻译过来是“谓词”的意思,必须,主要作用是匹配用户的请求,有很多种用法
              predicates:
                # Path 配置请求的路径,多个路径可以用逗号隔开。
                # /test/** 对应在 nacos 注册的 web-service 这个服务下,访问路径为 /test 下面的所有的方法
                - Path=/test/**
                # Method 方法谓词,这里是匹配 GET 和 POST 请求
                # 请求的方式,大小写不敏感
                - Method=GET,POST
    
3. 启动类
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.cloud.client.discovery.EnableDiscoveryClient;

// 开启 nacos 注册中心扫描,发现该服务
@EnableDiscoveryClient
@SpringBootApplication
public class WebApiGetawayApplication {

    public static void main(String[] args) {
        SpringApplication.run(WebApiGetawayApplication.class, args);
    }

}
4. 目录结构
目录结构
5. 测试访问
  1. 请求方式:http://网关ip:网关端口/服务名/**

  2. 结果

    结果
5. getaway-demo 源码

相关文章

  • 06.`getaway`-网关-`spring-cloud-ge

    1. 依赖 依赖 ...

  • Getaway

    浏览TripAdvisor或Booking经常会遇见一个词“getaway”,有时侯它是一处人少景美可避世的目的地...

  • HF getaway - culture stuff

    Monday, November 4, 2013 We had our first HF getaway even...

  • 博树-度假

    Getaway 短假 a city break 城市度假,城市游 Beach holiday 海边度假 动词短语同...

  • 亿级流量架构之网关设计思路、常见网关对比

    本文准备围绕七个点来讲网关,分别是网关的基本概念、网关设计思路、网关设计重点、流量网关、业务网关、常见网关对比,对...

  • 万能网关系统如何设计?

    本文准备围绕七个点来讲网关,分别是网关的基本概念、网关设计思路、网关设计重点、流量网关、业务网关、常见网关对比,对...

  • 网关与子流程

    网关 网关是用于控制流程的走向,也成为执行令牌,根据功能不同可以分为:排他网关,并行网关,包容网关,事件网关。 排...

  • 2018-03-27

    微服务网关 什么是微服务网关 微服务网关也称为服务网关或者API网关。服务网关 = 路由转发 + 过滤器...

  • 网关架构

    老网关架构: 新网关架构: 新老网关交易对比 老网关优点: 老网关不会存储任何数据,因此没有数据库的瓶颈。 老网关...

  • Activiti7的使用(六)

    Activiti的网关: 1、ExclusiveGateway:排他网关 排他网关(也叫异或(XOR)网关,或叫基...

网友评论

      本文标题:06.`getaway`-网关-`spring-cloud-ge

      本文链接:https://www.haomeiwen.com/subject/dddtektx.html