Heroku H99错误,服务器无法parsing
从昨天晚上开始,Heroku托pipe的服务器获得503 Service Unavailable
和504 Gateway Timeout
响应,这似乎与status.heroku.com上的平台问题一致 。
在日志中,我看到一个H99错误,这似乎表明Heroku平台错误。 Heroku.Router是错误的来源。 H99平台错误
从heroku logs
输出:
<timestamp> heroku[router]: Error H99 (Platform error) -> GET <app>.herokuapp.com/ dyno= queue= wait= service= status=503 bytes=
在代码更新之前更新了代码,这触发了重新部署,但是没有可能导致停机的应用程序更改,应用程序应该像以前一样运行。 在本地环境中没有问题。
由于这是周末,Heroku没有任何支持,而且还有免费的一层(一台networkingtesting仪)。 看来在这个阶段,没有什么可以做到这一点,因为错误被描述为Heroku方面的一个内部问题。
最终设法以两种方式解决这个问题。
最简单的解决scheme是从免费层升级并将应用程序扩展到两个dynos。 Heroku提供免费和付费级应用程序的方式有所不同,这使得服务器以最小的努力恢复正常运行。 在这个阶段还没有尝试降级,如果我再次将应用程序缩减到一个testing版,它可能会熬夜。
考虑到以上的成本,必须得到批准,第二种解决scheme是将代码重新部署到Heroku免费层上的新应用程序。 这工作,但需要更多的努力复制附加的附加组件等。这里的最后一步是将DNS指向新的应用程序。
仔细阅读,从免费级别到付费级别的比例可以有所作为。 另一方面,不build议在付费级别中进行扩展,并且不会解决停机问题。
鉴于周末停工的麻烦,以及缺乏关于问题的文档,我在这里分享这个!
- 将Node.JS应用程序部署到Heroku – caching问题?
- 在Heroku中使用npm和Node的Git依赖关系
- 使用forever命令在heroku上运行node.js脚本
- 如何让node-inspector与foreman和nodemon一起运行?
- 是否有可能通过Node.js应用程序来控制Heroku(就像Heroku Ruby的gem一样)?
- 将具有服务帐户的Firebase应用程序部署到Heroku(带有dotenv的环境variables)
- 在Heroku上运行一个IRC bot
- Heroku Websocket(socket.io)'空闲连接'H15 – Node.JS
- 部署到heroku – 未能检测到buildpack nodejs(jasonswett)