【发布时间】:2017-06-24 00:48:29
【问题描述】:
我正在将单体应用程序重新设计为微服务架构,并希望使用 Google Cloud Platform (GCP) 来托管整个解决方案。我很难理解他们的成本明细,并且担心我的成本在建造后将无法控制。这是针对个人项目的,但我希望在启动后会有很多用户,因此我希望获得正确的底层架构,同时在启动时初始成本合理。
这是我的架构:
微服务 1 - 4(总共 4 个 API 服务):
- 在 App Engine 上运行
- 公开 REST API 并将数据保存到 DataStore
- 最初每个 API 应该每天被访问大约 200 次
MicroService 5(事件触发 API 服务):
- 在 App Engine 上运行
- 监听 PubSub 事件并保存到 DataStore(基本上我有一个传感器可以将数据推送到该服务进行存储)
- 最初,PubSub 应该每天接收大约 200 次事件
微服务 6-7(总共 2 个 UI 服务):
- 在 App Engine 上运行
- 这些是用户界面,因此人们可以登录和使用系统。 UI 是轻量级前端应用程序,它们使用上面的 REST 服务以一种很好的方式填充用户数据。
- 每个用户界面服务应该每天使用大约 3 小时
因此,我总共有 7 个微服务,每个微服务在单个 GCP“项目”中作为 AppEngine“服务”运行。在这个项目中的这些 API 之间共享一个 DataStore。
由于我有 7 个 App Engine 实例正在运行,并且它们每天只需要运行很短的时间,定价如何运作?
我想使用 App Engine,因为它是完全托管的,这是我的设计要求之一。但我希望 AppEngine 有某种睡眠模式,这样当没有使用时它不会计费?
如果能帮助我了解我的每月费用,我们将不胜感激。
非常感谢。
2017 年 8 月 2 日更新
我决定暂时不使用 GCP。由于我希望在 Flex 中运行 7 个 App Engines 服务(因为它们是 node.js),我似乎无法访问免费层或将空闲服务扩展到 0 个实例的能力。
这意味着我将为这些服务支付全价。 (即每月 7 X 完整的 App Engine VM 成本:O)
这是我不能仅仅为了一个适当的微服务设计的 POC 的费用。相反,我将继续我的微服务设计,但使用 10 美元的 DigitalOcean 盒子和 Dokku 来容器化我的服务。如果这很好用并且我有需要,我会将此设计迁移到 GCP(或 AWS)
【问题讨论】:
-
请参阅 appengine 文档。 appengine 实例默认会休眠。
标签: google-app-engine google-cloud-platform google-cloud-datastore