如何以最低的成本配置App Engine?

时间:2014-12-17 17:24:08

标签: google-app-engine dart google-cloud-platform

我正在做一个原型后端,在不久的将来我预计流量不大但在测试时我消耗了所有300美元的免费路径。

如何配置我的应用以消耗尽可能少的资源?我需要把实例数量限制为1,使用便宜的机器,尽可能地睡觉,我已经读过有关Client vs Backend inances的内容。

随着时间的推移,我将学习最适合我的配置,但现在我需要CHEAPEST配置才能开始。

BTW:我正在使用带有Dart的托管虚拟机。

修改

我建议配置我的app.yaml文件,您会建议哪些选项可以解决此问题?

4 个答案:

答案 0 :(得分:3)

您的问题有两种思路。

1)优化代码:这对我们来说非常困难,因为我们不了解您的应用程序的使用情况以及客户端和体系结构。一般来说,这取决于您最常使用的Google App Engine产品,例如:数据存储区API调用(获取,写入,删除等等),BigQuery和Cloud SQL。即使经过优化,您仍然可能会因流量而产生大量费用。

2)执行廉价操作:这更容易,我想这就是你想要的。您可以手动强制执行每日预算(在您的结算设置页面中),这样该应用每天的费用绝不会超过一定金额。您还可以人为地将最大空闲实例数降低到0并使用尽可能小的实例(F1作为前端)。

有关定价详情,请参阅此文章 - https://cloud.google.com/appengine/pricing#Billable_Resource_Unit_Costs

答案 1 :(得分:2)

如果您使用托管VM - 您将需要为计算引擎实例价格而不是App Engine实例付费,而且据我所知,用作托管VM的最小可能实例是“g1-small”,其成本您每小时全额持续使用0.023美元(如果它将在整个月开启),因此您的最低费用将为0.023 * 24 * 30 = $ 16.56 ,仅限例如小时。排除磁盘和流量。使用最少量的数据存储操作,您可以保留免费配额。

答案 2 :(得分:1)

每个应用程序以不同方式消耗资源。为了最大限度地降低成本,您需要知道哪些资源占用了大部分费用并从那里开始。

如果它花费在刚刚坐在那里的额外实例上 - 那么将实例数量调整到所需的最小值并使用较低的类实例。如果您在数据存储区调用上看到了大量费用 - 那么请查看优化实体并利用内存缓存。

答案 3 :(得分:1)

简单应用的最低费用: 使用App Engine标准。它可扩展为零实例,因此,如果没有流量,则不会花费任何费用。使用App Engine Flex,您需要支付实例时间,而Flex(GCE)实例更大。

对最大实例(F1实例类)使用自动缩放: 使用自动缩放,您无需猜测需要多少实例。 F1是最小的实例。设置最大实例数,以防您获得DoS或流量超出承受能力的流量。

停止实例: 当您不希望使用该应用程序时,可以停止该App Engine版本。 Standard或Flex的实例小时将免费。对于Flex,将收取磁盘费用。该应用将在您再次需要时准备就绪。

App Engine版本清理: 版本易于创建且难以删除。这是有关项目清理的文章。请参阅有关App Engine清理的信息 https://medium.com/google-cloud/app-engine-project-cleanup-9647296e796a