Kong 的路由匹配规则

Kong是一个分布式API网关,可以注册route路由到service,然后请求真正的后端服务,最近在注册route时发现不同route的path可以相同,所以当注册相同的path时,Kong是如何判断请求应该路由到哪个服务呢?


Kong在进行路由时,依据以下规则进行匹配:

  1. kong会优先匹配有最多规则的路由。即注册路由时,配置项更多的路由将优先匹配(请求一个路由时,必须满足所有配置项)
  2. 如果给定请求的规则计数在两条路由 A 和 B 中相同,则将按照列出的顺序应用以下规则, 如果出现以下情况,将选择路由 A 而不是路由 B:
    • A 只有“普通”主机头,B 有一个或多个“通配符”主机头
    • A 的非主机标头比 B 多
    • A 至少有一个“正则表达式”路径,B 只有“普通”路径
    • A 的长路径比 B 的长路径长
    • A.created_at < B.created_at 即 A 要早于 B 创建

https://izcqi.com/posts/2020/07/28/kong-quick-start-and-core-concepts-en/

你可能感兴趣的:(Kong 的路由匹配规则)