【问题标题】:Heroku H99 Errors, Server not resolvingHeroku H99 错误,服务器无法解析
【发布时间】:2014-09-03 13:10:11
【问题描述】:

从昨晚开始收到来自 Heroku 托管服务器的 503 Service Unavailable504 Gateway Timeout 响应,这似乎与 status.heroku.com 上的平台问题一致。

在日志中,我看到 H99 错误,这似乎表明 Heroku 平台错误。 Heroku.Router 是错误的来源。 H99 Platform Error

heroku logs 的输出:

<timestamp> heroku[router]: Error H99 (Platform error) -> GET 
<app>.herokuapp.com/ dyno= queue= wait= service= status=503 bytes=

在停机之前更新了代码,触发了重新部署,但是没有可能导致停机的应用程序更改,应用程序应该像以前一样运行。在本地环境中没有问题。

由于是周末,Heroku 不提供支持,而且这是托管在他们的免费层(一个网络测功机)上。在这个阶段似乎没有什么可做的,因为该错误被描述为 Heroku 方面的内部问题。

【问题讨论】:

    标签: node.js heroku


    【解决方案1】:

    最终设法通过两种方式解决了这个问题。

    最简单的解决方案是从他们的免费层升级并将应用程序扩展到两个 dyno。 Heroku 托管免费和付费层应用程序的方式有所不同,这使服务器以最小的努力重新上线。在这个阶段还没有尝试降级,如果我再次将应用程序缩小到一个 dyno,它实际上可能会保持不变。

    鉴于上述产生的成本必须得到批准,第二种解决方案是将代码库重新部署到托管在 Heroku 免费层上的新应用程序中。这可行,但需要付出更大的努力来复制附加的附加组件等。这里的最后一步是将 DNS 指向新应用程序。

    仔细阅读,从免费层级扩展到付费层级可能会有所作为。另一方面,不建议在付费层级内进行扩展,而且似乎无法解决停机问题。

    考虑到周末停机带来的麻烦,以及缺乏有关该问题的文档,我在此分享!

    【讨论】:

    • 免费和付费之间没有区别 - 除了单个(免费)测功机将闲置,而超过 1 个测功机不会闲置。
    • 从阅读这个过程来看,空闲状态的处理方式似乎有所不同,而且似乎更容易出错。不过,我指的是空闲状态。
    猜你喜欢
    • 1970-01-01
    • 2018-05-07
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多