【问题标题】:Parse-Server hosted on Heroku acting unusual托管在 Heroku 上的 Parse-Server 表现异常
【发布时间】:2016-09-21 12:56:03
【问题描述】:

当我第一次将解析应用程序托管到 Heroku 服务器时,一切正常。 Android 客户端运行良好,甚至托管在 heroku 上的解析仪表板也显示了所有类和数据。

但是,突然没有我对从 android 客户端向服务器发出的每个请求进行任何更改的服务器或客户端返回

... 100: i/o 失败

Parse 仪表板提供

加载资源失败:服务器响应状态为 503 (服务不可用)

查看 Heroku 日志显示请求超时错误:

...heroku[路由器]: at=error code=H12 desc="请求超时"...

更奇怪的是,在我重新启动服务器或将任何更改部署到服务器后,它实际上适用于几个请求。

我目前正在使用免费的 dyno 和免费的 mLab mongodb,因为该应用仍在开发中。阶段。这就是它成为问题的原因吗?如果是这样,任何人都可以向我解释为什么,因为我在 heroku 中托管了另一个应用程序,在免费的测功机中运行,一切正常。

版本信息:

  • 解析服务器:2.2.10
  • 解析仪表板:1.0.11
  • Android Parse SDK:1.13.0

【问题讨论】:

  • 您是通过云代码创建用户吗?你在使用 Cloud Code 吗?
  • 不,不通过云代码创建用户。是的,我正在使用云代码。但是,如果不是云代码的问题,当我没有向服务器发送任何会触发任何云代码功能的请求时。

标签: heroku parse-server


【解决方案1】:

当您的应用程序响应时间过长时会引发 H12 错误。 Heroku 路由器在 30 秒时终止请求并向客户端发送 503。这里重要的是,测功机将继续处理请求,直到完成,这与之前的问题更加复杂。

您需要向应用程序添加检测以发现哪些代码路径存在问题。像 New Relic 这样的东西在这里会很有用。当您将响应时间降低到适合您的流量的合理水平时,您将不再看到 H12。

【讨论】:

  • 感谢 New Relic 的想法。我不知道如何,但今天一切似乎都运行良好,无需我进行任何更改。此外,只是为了让您知道最高响应时间是注销和 requestPasswordReset 解析端点。他们分别用了 8.13s 和 4.13s。除此之外的其他一切都需要不到 2 秒的时间。所以,我想这不是有问题的代码路径的问题。
【解决方案2】:

Parse - All Requests Receive Timeout Error有问题

我关注了这个话题,它解决了我的问题。 我在package.json 文件的依赖项下添加了"mongodb":"2.1.18"。试试看,让我知道它是否有效。 (对我有用)

他们目前正在调查这个问题。

【讨论】:

  • 目前,我在 mongodb 3.0.12。我没有在 package.json 下指定任何关于 mongodb 的内容。 mongodb 是使用 heroku 中可用的 mlab mongodb 附加组件安装的。今天一切正常,没有出现任何错误。如果我再次遇到同样的问题,将研究您的解决方案。
  • 我之前也没有指定任何内容,我认为这是由依赖引起的。无论如何,如果您再次遇到问题,我很乐意收到您的来信。
猜你喜欢
  • 1970-01-01
  • 2016-05-25
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2018-05-22
  • 2014-12-20
  • 1970-01-01
相关资源
最近更新 更多