文章目录
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 就已经搭建好了。