跳到主要内容
版本:3.10.x

服务与路由

服务与路由是 API7 网关中流量路由的基本构成要素。二者共同定义网关如何匹配传入请求,以及将请求代理到哪里。

服务

服务是共享后端(上游)和插件配置的一组路由的逻辑集合。在微服务架构中,一个服务通常代表一项业务能力或一个微服务,例如“用户服务”或“支付服务”。

主要字段

字段类型必填说明
namestring服务的唯一名称。最多 100 个字符。
typestringhttp(默认)或 stream
hostsarray服务接受的域名列表。最多 32 项。
path_prefixstring监听路径前缀,必须以 / 开头。
strip_path_prefixboolean如果为 true(默认),代理到上游前会移除 path_prefix
upstreamobject后端目标配置。
pluginsobject应用于此服务中所有路由的插件。

路由

路由为服务内的传入请求定义具体匹配规则,例如 URI、HTTP 方法和主机。请求匹配路由后,网关会应用定义的策略,并将请求代理到服务的上游。

主要字段

字段类型必填说明
namestring路由的唯一名称。
pathsarray要匹配的 URL 路径列表(位于 path_prefix 之后)。最多 64 项,每项必须以 / 开头。
methodsarray允许的 HTTP 方法,例如 GETPOST。如果为空,则允许所有方法。
varsarray使用 API7 表达式定义的高级匹配规则。
priorityinteger匹配优先级,值越大优先级越高,默认为 0。
enable_websocketboolean为路由启用 WebSocket 代理。
pluginsobject此路由专用的插件。

请求流程

下图展示了请求如何通过路由和服务流向后端:

企业版与开源版工作流对比

在 API7 企业版中,控制面存储网关配置,并将其同步到相应的数据面节点。这种架构无需单独的发布流程,即可提供集中管理、可审计性和环境隔离。

特性开源 APISIXAPI7 企业版
持久化通过 etcd 立即更新数据面。存储在控制面数据库中,并同步到数据面节点。
配置范围直接针对 APISIX 集群管理配置。配置按网关组划分,通过控制面管理。
部署保存后更改立即生效。更改从控制面同步到目标网关组中的数据面节点。
审计变更跟踪能力有限。完整记录控制面操作的审计日志。

后续步骤