python - 为什么我需要部署一个 "default"应用程序才能在 GAE 中部署多个服务?

标签 python google-app-engine google-cloud-platform microservices

阅读 this doc它说“您必须首先将应用程序的一个版本部署到默认服务,然后才能创建和部署后续服务。”

我不明白这一点,因为我认为 GAE 微服务是独立的事物,如: enter image description here

但这似乎不是对 GAE 微服务如何工作的准确描述?是否有设置顶级配置或进行某种路由的主 Controller “默认”服务?如果我只是运行一堆非 Web 应用程序(意味着将按计划运行并处理数据的应用程序)并且不需要用于接受 Web 请求的前端“应用程序”,那么为什么我仍然需要创建默认服务?

最佳答案

原因是还有几个应用级配置,适用于所有服务/模块:

如果不在 default 服务之后/与服务一起部署,其中一些配置可能会出现问题。并且某些服务可能依赖于应用级配置。

首先部署default 的要求只是一种降低初始部署问题风险的措施。后续部署不再有此限制(因为 default 已部署)

是的,default 服务是强制性的(有点像用于各种东西的厨房水槽,例如,不匹配任何调度规则的请求将被发送到 default服务)。因此,只需将您的非 Web 应用程序之一声明为默认应用程序即可(default 服务实际执行的操作并不重要)。

某种程度上相关(主要是为了示例):Can a default service/module in a Google App Engine app be a sibling of a non-default one in terms of folder structure?

关于python - 为什么我需要部署一个 "default"应用程序才能在 GAE 中部署多个服务?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42360790/

相关文章:

python - 迭代 numpy 数组以在字典中使用

python - 使用python中的任务队列在google appengine中进行异步调用

java - 本地主机上的服务器 App Engine Standard 无法启动

ssl - 正在处理 gke 证书管理器证书

python - 从 GCS 存储桶中的文件夹中删除数百万个对象

python - QTextBrowser 在 Mac 上显示 markdown,但在 Windows 上不显示

找到 Python XML 元素但计算结果为 False - 如何以 Python 方式检查存在性?

python - 没有模块 psutil.error

android - 运行 Google App Engine 移动后端客户端时出错

google-cloud-platform - Google Cloud SDK 抛出 Reachability Check failed 错误