如果您的业务请求需要分发给其他服务或者应用,您可以为应用配置网关路由功能,实现请求路由分发。本文介绍如何通过云原生API 网关为您的应用设置路由规则。
背景信息
云原生API 网关是一种集成了流量网关、微服务网关、安全网关以及AI网关功能的统一架构解决方案,旨在解决传统网关分散管理带来的挑战。通过使用云原生API网关,开发者可以更容易地实现服务发现、负载均衡以及跨服务通信的管理,从而简化了复杂分布式系统的开发与维护过程。更多信息,请参见什么是云原生API网关。
前提条件
MSE
您已创建云原生API 网关。具体操作,请参见创建云原生API网关实例。
SAE
您已创建命名空间,并确保云原生API 网关与SAE命名空间处于同一地域,且绑定同一个VPC。具体操作,请参见创建命名空间。
您已创建应用。
创建路由规则
登录SAE控制台,在左侧导航栏,单击命名空间,在顶部菜单栏选择地域,然后在命名空间页面,单击目标命名空间名称。
在左侧导航栏,单击网关路由,然后在网关路由页面,单击创建网关路由。
在创建路由页面,配置相关信息,然后单击保存。
配置项
描述
示例
路由名称
路由规则名称,自定义。
demo
网络类型
选择待转发请求的网络类型。
公网:通过公网网关转发的请求,按照实际转发流量计费。
私网:通过私网网关转发的请求不计费,仅在当前VPC内部转发。
公网
网关类型
选择云原生API网关。
云原生API网关
网关实例
当网关类型选择云原生API网关时需要配置。选择与命名空间同一地域且使用同一VPC的网关实例。如果您需要创建新的网关实例,可以单击创建云原生API网关进行创建。具体操作,请参见创建云原生API网关实例。
demo
域名
选择需要匹配的域名,支持选择多个域名。如果您需要创建新的域名,可以单击创建域名进行创建。具体操作,请参见创建域名。
www.demo.com
路径(Path)
设置匹配HTTP请求中的Path参数。
相同匹配规则时,Path越长优先级越高。
不同匹配规则时,
。等于:即完全匹配。例如,Path等于
/user
。前缀是:以前缀作为匹配条件。例如,Path以
/user
开头。正则匹配:以正则表达式作为匹配条件。例如,字符类
user
。
条件:前缀是
路径:/user
方法(Method)
设置匹配HTTP请求中的Method参数,不填表示匹配所有参数,支持选择多种HTTP方法。
GET
请求头(Header)
设置匹配HTTP请求中的Header参数,相同匹配规则时参数越多优先级越高。
请求头:demo
条件:前缀是
值:value
请求参数(Query)
设置匹配HTTP请求中的Query参数,相同匹配规则时参数越多优先级越高。
请求头:key
条件:前缀是
值:value
服务来源
支持MSE Nacos和K8s Service两种注册中心。
MSE Nacos:选择后,需设置MSE Nacos实例和MSE Nacos命名空间。
K8s Service:SAE支持通过K8s ServiceName进行多语言服务注册发现,并允许使用固定域名配置应用,以解决部署后实例IP变化的问题。
说明与应用的服务注册发现方式保持一致。
MSE Nacos实例
使用场景
选择当前路由的目标服务类型。
基础场景
单服务:将请求分发到唯一一个后端服务,是最常使用的场景。
灰度场景
多服务:将请求按比例分发到多个后端服务,通常在切流和灰度场景下使用。
关于目标服务不同类型的说明,请参见路由方式概述。
单服务
后端服务
选择后端应用、服务及其对应的端口。
说明涉及权重的目标服务流量比例总和要求为100%。
应用名称:demo
服务名称:demo
服务协议:自动读取
服务端口:80
高级配置
Fallback
开启Fallback开关,设置Fallback服务,您需要选择指定的服务。当路由指向的后端服务没有可用节点时,原请求会访问此处指定的Fallback服务。
说明目前仅支持HTTP服务之间的Fallback能力。
开启
超时时间(秒)
输入超时时间。默认为60秒。如果为0,则表示永不超时。
60
重试次数
输入重试次数。如果为0,则表示禁用重试。
2
重试条件
请选择重试条件。更多信息,请参见配置重试策略。
connect-failure、cancelled
重试状态码
请添加重试状态码。报错后的提示信息。
502
路由规则新建成功后,可以在网关路由页面进行查看、编辑等操作。
管理路由规则
创建路由规则后,您可以在网关路由页面查看转发策略、编辑以及删除网关路由。