享学课堂特邀作者:老顾
转载请声明出处!
前言
前两篇介绍了Gateway的简单用法,今天老顾分享一些Gateway的高阶知识点。
注册中心
在微服务中,如商品服务,肯定是集群部署的。那Gateway怎么路由到多个商品服务呢?
还有服务注册中心里面往往注册了很多服务,如果每个服务都需要单独配置的话,这将是一份很枯燥的工作。Gateway 提供了一种默认转发的能力,只要将Gateway 注册到服务中心,Gateway 默认就会代理服务中心的所有服务。
我们先来搞定一个注册中心,老顾这里将介绍Nacos注册中心,为什么呢?Spring Cloud Netflix系列Eureka宣布进入维护阶段;另一个因为将来老顾会介绍SpringCloud Alibaba系列课程,这里预先分享个引子。
什么是 Nacos
Nacos 是阿里巴巴推出来的一个新开源项目,这是一个更易于构建云原生应用的动态服务发现、配置管理和服务管理平台。
Nacos 致力于帮助您发现、配置和管理微服务。Nacos 提供了一组简单易用的特性集,帮助您快速实现动态服务发现、服务配置、服务元数据及流量管理。
鼎鼎大名的阿里公司出品,并且应用于生产环境,性能不是个问题。
Nacos vs Spring Cloud
相对于 Spring Cloud Eureka 来说,Nacos 更强大。
Nacos = Spring Cloud Eureka + Spring Cloud Config
Nacos 可以与 Spring, Spring Boot, Spring Cloud 集成,并能代替 Spring Cloud Eureka, Spring Cloud Config。
通过Nacos Server和spring-cloud-starter-alibaba-nacos-config实现配置的动态变更。
通过Nacos Server和spring-cloud-starter-alibaba-nacos-discovery实现服务的注册与发现。
这里我们忽略不介绍Nacos如何安装,以后老顾会介绍,小伙伴也可以自行学习
微服务提供者
我们先弄个简单的提供者,提供一个接口
一)pom配置
这边需要提醒的一点就是,因为采用了注册中心为阿里的,所以我们这里采用的机制都是SpringCloud Alibaba的框架
其实用什么框架不主要,最主要知道Gateway的基本原理就行了,换框架也影响不大。
二)application配置文件
![(https://imgconvert.csdnimg.cn/aHR0cHM6Ly91cGxvYWRlci5zaGltby5pbS9mL0ZJV0wwM1ZBMTJRVnFmeEMucG5nIXRodW1ibmFpbA?x-oss-process=image/format,png)
nacos.discovery.server-addr指向Nacos注册中心
<