关于gateway的一些知识细节

  1. gateway的路由配置配置nacos中,可以实现路由动态修改实时生效,无需重启项目。这里gateway底层应用了nacos的自动刷新机制。

  2. gateway底层通过Ribbon进行各个微服务实例的请求转发调用。通过微服务实例名称寻找微服务实例,并使用Ribbon的负载均衡算法进行具体某个实例的调用,前提是服务名称的服务必须注册到注册中心上去。也可以不通过微服务名称,而是直接写访问路径去转发请求。

  3. filters: - RewritePath=/api/(?<segment>.*),/$\{segment}
    一直不太明白这个配置的具体含义,百度搜索了一下,是将前面的配置,即/api/(?<segment>.*)替换成后面的配置,即/$\{segment}
    那么segment是什么意思呢?可以理解成一个占位符,前面的意思是api/开头的请求。后面的意思是替换成/xxx,即将api去掉,后面的请求保持segment占位符的请求不变这个意思。

  4. gateway提供了一系列全局拦截器和局部拦截器,可以对请求进行拦截、扩展和改变。一定要建立一个思想,就是全局的一些东西,例如跨域的配置,权限的认证等等,都可以通过gateway来进行统一配置。而不用每个微服务去进行单独配置。

猜你喜欢

转载自blog.csdn.net/qq1309664161/article/details/126476873