在现代微服务架构中,随着业务需求的不断演变,服务的灵活性和可扩展性已成为关键考量因素。为了应对复杂的网络配置需求,如跨服务间路由的迁移、上游配置频繁变更挑战,API7 企业版 3.2.14 版本进行了多项功能优化。
支持路由优先级
将路由关联到新服务通常涉及两个步骤:首先在新服务上配置路由,再从旧服务中删除该路由配置。但这种方式存在一个问题:在两步操作之间,新旧服务上的路由配置会同时生效,导致流量分配不确定性,甚至可能引发服务冲突和数据不一致。
为了解决这个问题,API7 企业版中引入了路由优先级功能。这一功能允许配置路由时指定优先级,系统会根据优先级选择路由路径。通过合理的优先级设置,可以确保流量在服务迁移和路由切换过程中平滑过渡,同时避免服务冲突和数据不一致。
当服务发布到网关组时,如果一个网关组中存在不同的服务的路由,它们的 域名 + 路径前缀 + 路径 + 优先级
完全相等,系统就会提示路由冲突,无法发布,避免网关接受到请求后被分配到不确定的路由中进行处理,导致流量分配的不确定性。
但如果你需要在同一个网关组中配置 域名 + 路径前缀 + 路径
的路由,只需要在新的路由上配置一个与原有路由不同的优先级,例如 1
。
此时再进行发布同样会有一个提示,但这个提示不会阻止你的发布行为,仅供发布前的参考。
上游配置优化
- 优化了上游灰度分流的展示标签栏,当服务内的灰度分流正在进行时,会在标签中展示各个上游的分流百分比,便于快速了解当前的灰度情况。
- 在基于服务模板发布到网关组的时,支持在发布过程编辑所有的上游相关配置。且所有的上游配置都升级为运行时配置,允许在服务发布后随时进行编辑,以更好地适应上游频繁变更的情况。
- 对上游连接相关的配置表单进行了优化,部分表单标题调整,将关联性较强的表单项进行了聚合处理,并明确展示了部分配置的默认执行逻辑,尽可能降低在填写时的复杂度。
服务支持快速添加一个路由
在关闭了强制发布流程的网关组中添加服务时,表单中新增了一个“添加第一个路由”的开关,开启开关后可以填写路由的配置。
填写配置后点击添加将会同时创建服务及服务内的第一个路由,简化了在测试环境中快速部署测试路由的流程。
支持通过 OpenAPI 导入网关组生成服务
在关闭了强制发布流程的网关组中,现在支持通过 OpenAPI 导入网关组直接添加服务。
总结
API7 企业版 3.2.14 版本针对现代微服务架构中的灵活性和可扩展性需求,进行了多项功能优化。引入路由优先级功能,确保服务迁移时流量分配的平滑过渡。上游配置方面,改进了灰度分流展示标签和配置表单,使上游变更更为便捷。此外,新增了快速添加路由和通过 OpenAPI 导入服务的功能,简化了服务配置流程,提升了操作效率。