【问题标题】:How does Heroku dyno sleeping & waking work under the covers?Heroku dyno 如何在被子下睡觉和醒来?
【发布时间】:2016-07-16 02:43:16
【问题描述】:

这是我一直想知道的——具体来说,如何在收到连接请求时打开容器或服务器(在 x 分钟不活动后让它进入睡眠状态非常容易)。

假设我在 AWS 上有一个已关闭的 EC2 实例。在导航到其 DNS URL 或 IP 地址后,我希望服务器唤醒并将其内容提供给客户端。 Heroku 目前正在设法做到这一点,我一直想知道幕后发生了什么……而且我知道像 AWS 这样的云服务器通常不具备网络唤醒功能。

我对可能发生的事情有一些想法 - 也许睡眠测功机实际上并没有“关闭”,而是被强制闲置。它们也有可能是连接到一个更大的“母亲”服务器的容器,该服务器正在接收连接请求,假脱机休眠的服务器,然后将连接转发到激活的服务器。有建筑知识的人知道秘诀是什么吗?

您可能会说,我对开发操作或管理服务器几乎一无所知。这只是我的好奇心。

【问题讨论】:

    标签: heroku amazon-ec2 architecture devops


    【解决方案1】:

    只是一个假设! 想象一个Kubernetes 环境,其中水平吊舱autoscaler (HPA) 配置为保持0 吊舱处于活动状态。 这将使 Node 仍然拥有保留的资源,但是未被使用,从而允许将其分配给其他客户端和/或应用程序。 当您执行wake-up 时,实际上是在配置HPA 以使活动的pod 保持在0 之上,给人一种关闭并重新启动应用程序的印象。

    【讨论】:

    • Kubernetes 与 Amazon Web Services 有何关系?
    • 我目前认为,具有可用性、可扩展性和可重复性的出色服务基于 Kubernetes,就 AWS 而言,基于 EKS 服务。正如一些 AWS re: Invent 中所示,Heroku 使用这些服务是有弹性的。
    【解决方案2】:

    AWS EC2 有一个 API,您可以使用它来控制/配置服务器,就像通过他们的仪表板一样。

    【讨论】:

    • 启动 EC2 实例需要更长的时间。 Heroku dynos 在几秒钟内启动,有时是 2、3 秒。
    猜你喜欢
    • 1970-01-01
    • 2015-05-23
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-08-16
    • 2016-11-25
    • 1970-01-01
    • 2014-11-11
    相关资源
    最近更新 更多