Heroku billing dynos 是如何工作的?

How does Heroku billing dynos work exactly?

我试图了解 Heroku 定价系统。 好的,免费帐户收到 1000 dyno/hour。 dyno/hour 的确切含义是什么?这取决于什么?每秒请求数?用户数量? 如果我想切换到非睡眠优惠,我将不得不为每个 dyno 支付 7 美元。那么 1000 个免费测功机每月要花费我 7000 美元? 1000dyno/month大约支持多少用户? 谢谢。

假设您使用信用卡验证您的帐户,您每月有 1000 小时的免费测功机小时数。

A "dyno hour" 只是测功机的一小时 运行。

如果您只有 1 个应用程序 运行 只有 1 个 dyno,则该 dyno 可以永远 24/7 可用,因为即使 31 天的月份也包含 31 x 24 = 744 小时,这比您可以自由支配 1000 小时的免费测功机。

但是,如果您的一个应用程序上的一个测功机是 "web dyno"(即网络服务器),请注意免费的网络测功机会在闲置 30 分钟后休眠(在这种情况下,下一个请求网络测功机 "wakes it up").

免费网络测功机睡眠是一把双刃剑。一方面,当网络 dyno 休眠时,它不会消耗您的任何免费 dyno-hours(因此您可能会根据您的需要从 1000 个免费 dyno 小时数中获得更多)。如果您可以容忍 Web 客户端响应任何恰好唤醒睡眠中的测功机的查询的缓慢响应,那就没问题了。如果没有,您将需要确保您的网络测功机保持忙碌(即确保它不会在 30 分钟内没有收到任何请求)。

有关详细信息,请参阅 Free Dyno Hours

请注意,dyno 基本上只是一个虚拟机。这是你的"server"。一个测功机当然可以支持许多用户,具体取决于您应用程序的复杂性/性能要求。 您可以 "scale" 您的应用同时 "vertically" (意味着每个测功机的计算能力增加)和 "horizontally" (意味着 运行 多个测功机实例负载平衡您的应用程序的流量)。 参见 What is a Heroku "Dyno"?。 您的应用程序需要处理绝对巨大的流量才能证明将 dyno 扩展到 1000 个实例是合理的。 如果您真的需要扩展您的测功机(如果您只是刚刚开始构建您的应用程序,则可能性很小),您将需要使用付费测功机。