google-app-engine - 生产中 App Engine 标准环境和柔性环境项目之间的路由

标签 google-app-engine go app-engine-flexible google-app-engine-go

我在 Go 中有两个 App Engine 项目,它们包含一个面向用户的应用程序。一个项目是标准环境项目,具有大部分功能,还服务于 React 前端静态包。第二个项目是一个 Flexible Environment 项目,用于与第三方 API 通信和将大文件传输到第三方 API(这是一个 Flexible Environment 项目,因为我们使用 urlfetch 遇到了大小限制)。

现在我正在部署应用程序,我遇到了来自前端的 api 请求问题。在开发中,我们的前端节点服务器将代理请求,例如/api/project 和/api/user 到在不同端口上运行的适当 App Engine 服务,但在生产中,我的标准环境项目位于类似 https://my-project-std.appspot.com 的位置,灵活的 env 项目类似于 https://my-project-flex.appspot.com。 .

我使用带有 std env 项目的 dispatch.yaml 文件将 api 请求(例如/api/project 和/api/user)路由到适当的服务,但我不确定路由请求的最佳方式应该去灵活的环境服务(例如/api/model)。我应该通过 std env 项目路由它们并重定向吗?设置反向代理?其他一些方法?

谢谢!

最佳答案

我采用了反向代理方法,现在它的行为正如我所希望的那样。这篇博文对找到解决方案很有帮助 https://blog.semanticart.com/2013/11/11/a-proper-api-proxy-written-in-go/

关于google-app-engine - 生产中 App Engine 标准环境和柔性环境项目之间的路由,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51757088/

相关文章:

google-app-engine - 将 Google App Engine 应用程序升级到灵活环境时,如何运行 Google 的 aefix 工具?

google-app-engine - gcloud preview 应用程序部署过程需要大约 8 分钟,这正常吗?

java - 将 GAE 项目迁移到 Java 8 - 将运行时属性添加到 appengine-web.xml 后出现 XML 验证错误

testing - Go包之间如何共享测试接口(interface)?

go - 向结构体添加接口(interface) [golang]

go - 在debian armv7l上安装Go的最新版本[保留]

google-app-engine - 诊断部署 GAE flex 应用程序时的错误

python - 本地开发服务器的谷歌应用程序引擎没有终端输出?

python - 使用 GAE Python GCS Client Library 访问时如何在 GCS 中分页?

google-app-engine - 如何区分 Google AppEngine 上的本地部署和实时部署