如何在 HTTP 服务关闭时得到通知?

how to get notified when HTTP services are down?

我们有一个 iOS app.We 使用 HTTP 服务来获取和发布 JSON 数据。推送通知也已启用。如果后端服务已关闭,是否有任何方式通知用户服务已关闭

你试过暂停吗?如果应用程序无法连接到服务器一段时间, 不仅连接尝试几乎总是终止,而且它还会在我使用的大多数编程语言上引发超时异常。 尝试检查您用于通过 http 进行通信的对象的超时规范,您可能能够实现它们。 如果您无法连接到服务器以接收 http 消息 简单地告诉用户 "server unavailable" 或类似的东西。

理想情况下,如果您知道后端服务器将停止运行一段时间(例如 更新目的等),你仍然可以使用 http 服务器, 你可以发送一个包含类似 "server unavailable" 的文本的 http,或者你可以只发送一个空消息然后检测 它在前端。(也就是说,如果您从不发送空消息,无论如何 我认为它会给你带来问题。 "server unavailable"应该更好。)。

如果 http 服务器会周期性不可用,请尝试执行类似 更新通知。当您启动应用程序时,应用程序会询问服务器何时启动 更新将发生。然后你保存它,当它再次启动时,它会检查 目前是否正在进行此类更新。 除此之外,如果你真的想使用推送通知,它会 在服务器关闭之前定期不可用 - 发送通知。 真的,你只需要在这里发挥你的想象力。

但是您不能做的是在您的服务器关闭时发送通知, 如果你不知道它会下降。主要是因为您无法通知客户端(因为您用于通信的服务器已关闭)。但是 - 正如我上面所说 - 你可以做的是让客户端检查服务器何时关闭(如果它无法连接等)。 如果您有备份服务器,您可以在服务器出现故障时发送通知。如果服务器和备份服务器都宕机了,如果只有备份服务器需要通知你——客户端很可能不知道它宕机了。 您可以使用外部公司作为您的备份服务器。所以如果电 关闭(或类似的东西)不会影响您的通知系统。

希望对您有所帮助。