Spring Cloud GateWay搭建

文章目录
  • [Spring Cloud GateWay搭建](#Spring Cloud GateWay搭建)

Spring Cloud GateWay搭建

简单搭建一个,有注册中心,两个微服务,一个网关的组成的微服务架构。
技术选型: Eurake、Spring boot、Spring cloud Gateway、OpenFeign

1.搭建注册中心:

注册中心,常用的有:Eureka、Consul、Zookeeper、Nacos,此处要明白一点是注册中心本身就是一个服务,所以对注册中心而言,不仅仅局限于java编写的,也存在于是其他语言编写,本质是一个server软件,只需要满足注册中心的功能即可。

1.1添加依赖
1.2 配置文件及启动类
复制代码
server:
  # 端口
  port: 8888
spring:
  application:
    # 实例名称
    name: eureka-server
eureka:
  client:
    # 是否向eureka注册  默认true 单点服务端需要设置为false
    register-with-eureka: false
    # 是否拉取注册的客户端信息 默认true 单点服务端需要设置为false
    fetch-registry: false
    #自我保护默认关闭
    enable-self-preservation: false
    #注册中心地址,由注册中心ip和项目端口号拼接/eurake
    service-url:
      defaultZone: http://${spring.application.name}:${server.port}/eureka/
  instance:
    # 主机地址 (ip)
    hostname: localhost
1.3 测试

在浏览器地址栏中输入 http://localhost:8888/

此时证明我们的注册中心服务以启动完毕!

2.启动两个服务

注册中心服务已启动完毕,接下来启动两个微服务作为注册中的client。定名字为 partService,mpnService。引入Spring mvc 、Eurake Client 和 OpenFeign 依赖。

2.1 添加依赖


按照上述步骤创建两个微服务。

2.2 配置文件及启动类
复制代码
server:
  # 服务的端口
  port: 8081
spring:
  application:
    name: partService
eureka:
  client:
    # 注册中心地址
    service-url:
      defaultZone: http://localhost:8888/eureka
2.3 测试

去上面的eurake 网页看下服务是否被注册进去了

3.配置openFeign

3.1 编写代码

针对两个服务各自创建两个控制层接口,顺便在配置文件中定义下服务的请求上下文路径

开启OpenFeign。

调用者

被调用者

3.2 进行测试

4.开始搭建网关GateWay

4.1 添加依赖
4.2 配置文件
复制代码
server:
  port: 8080
spring:
  application:
    name: gateway
  cloud:
    gateway:
      # 配置路由
      routes:
        - id: partService
          uri: lb://partService
          predicates:
            - Path=/partService/**
        - id: mpnService
          uri: lb://mpnService
          predicates:
            - Path=/mpnService/**
eureka:
  client:
    service-url:
      defaultZone: http://localhost:8888/eureka
4.3 测试

这样一个简单的Spring Cloud GateWay 就已经搭建好了。

相关推荐
计算机毕设指导69 小时前
基于SpringBoot校园学生健康监测管理系统【源码文末联系】
java·spring boot·后端·spring·tomcat·maven·intellij-idea
mysuking9 小时前
springboot与springcloud对应版本
java·spring boot·spring cloud
希望永不加班9 小时前
SpringBoot 数据库连接池配置(HikariCP)最佳实践
java·数据库·spring boot·后端·spring
迈巴赫车主9 小时前
蓝桥杯3500阶乘求和java
java·开发语言·数据结构·职场和发展·蓝桥杯
身如柳絮随风扬9 小时前
Lambda、方法引用与Stream流完全指南
java·开发语言
yaoyouzhong10 小时前
基于SpringBoot和PostGIS的云南与缅甸的千里边境线实战
java·spring boot·spring
姗姗的鱼尾喵10 小时前
Spring/SpringBoot 面试高频(含IOC/AOP/事务)
java·spring boot·面试
Mr_Xuhhh10 小时前
从理论到实践:深入理解算法的时间与空间复杂度
java·开发语言·算法
望眼欲穿的程序猿11 小时前
Vscode Clangd 无法索引 C++17 或者以上标准
java·c++·vscode
带刺的坐椅11 小时前
Spring-AI 与 Solon-AI 深度对比分析报告
java·spring·ai·llm·solon·spring-ai·solon-ai