Pinterest 如何节省服务器成本?
我们所有的前端服务器(最终为我们的最终用户提供 HTML/JSON/etc 的服务器)都是“无状态”的。这意味着我们可以通过添加更多相同的服务器来扩展流量。我们有一些每十分钟运行一次的 python 脚本,它们会根据一天中的时间增加或减少我们拥有的节点数量。因此,假设我们有 100 台服务器的基线。我们可能会说从 12a-9a 以 80% 运行(意味着 80 台服务器),假设我们的峰值来自 12p-6p,然后我们指定我们想要 120%(意味着 120 台服务器)。我们的脚本所做的只是告诉 EC2 终止一定数量的节点,或者创建一定数量的节点。当这些节点出现时,它们会注册到负载均衡器中,并检查正确版本的代码并开始服务流量。更多细节可以在这个黑客新闻线程中找到:http://news.ycombinator.com/item?id=4993753。tl;dr 我们使用 cron、python 和 Amazon API。