将AppEngine中的传入请求路由到不同版本

问题描述 投票:1回答:1

我有一个Android应用,并在Google AppEngine中部署了该应用的后端。

我正在Google云内部寻找类似API网关的东西,该API可以将应用程序路由到特定的后端版本,具体取决于客户端版本(例如,通过标头传递吗?),而无需在应用程序中明确指定目标后端版本(始终需要发布应用)。

例如在客户端中实现:https://my-app.appspot.com(标题:X-MyApp-Appversion:14)

Api网关:介于1到5之间的X-MyApp-AppVersion->https://v1-dot-my-app.appspot.com在6到11之间的X-MyApp-AppVersion->https://v2-dot-my-app.appspot.comX-MyApp-AppVersion大于11-> https://v3-dot-my-app.appspot.com


已经尝试过的解决方案:每次我们在后端部署新版本时,直接在应用程序中定位版本都需要对应用程序进行更新。覆盖现有后端版本将意味着后端停机,我尝试了一次,并丢失了100多个请求。使用dispatch.yaml,您只能定位特定的服务,而不能定位服务的版本。负载均衡器和流量导向器似乎更复杂,并且不完全适合此目的。

google-app-engine api-gateway api-versioning
1个回答
0
投票

据我所知,当前没有可用的方法可以根据请求标头将请求重定向到特定的App Engine版本。

一种解决方法是使用某些逻辑来创建App Engine服务,该逻辑将根据请求标头将请求转发到当前服务的所需版本。

另一个解决方法可能是为应用程序的较新版本部署新服务。

© www.soinside.com 2019 - 2024. All rights reserved.