HTTP 长轮询 - 超时最佳实践
HTTP Long Polling - Timeout best practice
我玩 Javascript AJAX 和长轮询。
尝试为服务器响应超时找到最佳值。
我阅读了很多文档,但找不到关于超时的详细解释。
有人选择20秒,其他人选择30秒...
我使用图表中的逻辑
如何选择更好的超时值?
我可以使用 5 分钟吗?
这是正常做法吗?
PS:可能的 Ajax 客户端互联网连接:以太网 RJ-45、WiFi、3G、4G,还有 NAT、代理。
我担心连接在某些情况下会因长时间超时而被第三方断开。
也许是你对英语的掌握有问题,但它是连接的生命周期(连接打开和关闭之间的时间)你需要担心的不仅仅是超时(没有连接的时间长度activity 之后连接将终止)。
尽管存在 websockets,但仍然有很多已部署的硬件会断开连接 ,无论 的 activity(还有一些会在 activity) 它认为流量是 HTTP 或 HTTPS - 有时是设计错误,有时是对 sloloris 攻击的本土缓解措施。你有 3G 和 4G 客户端意味着你可能会遇到 5 分钟寿命的问题。
不幸的是,没有什么灵丹妙药可以让我们知道什么是普遍适用的。关键是要了解用户的分布范围。如果它们都在您的 LAN 上并直接连接到服务器,那么您应该能够使用一个相对较大的值,但是将持续时间设置为无限制会显示您的应用程序中的任何内存泄漏 - 有时最好现在就刷新再说一遍。
考虑到服务器和客户端之间存在集线器和交换机以外的基础设施的情况,您需要提供一种机制来检测和重新建立断开的连接,而不管时间长短。当您弄清楚如何执行此操作后,然后:
断开的连接只是一个小的性能故障,不会对功能产生重大影响
然后添加记录丢失的连接的功能并由此确定最佳连接时间以消除 (1)
中描述的小问题是微不足道的
我玩 Javascript AJAX 和长轮询。 尝试为服务器响应超时找到最佳值。
我阅读了很多文档,但找不到关于超时的详细解释。
有人选择20秒,其他人选择30秒...
我使用图表中的逻辑
如何选择更好的超时值? 我可以使用 5 分钟吗? 这是正常做法吗?
PS:可能的 Ajax 客户端互联网连接:以太网 RJ-45、WiFi、3G、4G,还有 NAT、代理。
我担心连接在某些情况下会因长时间超时而被第三方断开。
也许是你对英语的掌握有问题,但它是连接的生命周期(连接打开和关闭之间的时间)你需要担心的不仅仅是超时(没有连接的时间长度activity 之后连接将终止)。
尽管存在 websockets,但仍然有很多已部署的硬件会断开连接 ,无论 的 activity(还有一些会在 activity) 它认为流量是 HTTP 或 HTTPS - 有时是设计错误,有时是对 sloloris 攻击的本土缓解措施。你有 3G 和 4G 客户端意味着你可能会遇到 5 分钟寿命的问题。
不幸的是,没有什么灵丹妙药可以让我们知道什么是普遍适用的。关键是要了解用户的分布范围。如果它们都在您的 LAN 上并直接连接到服务器,那么您应该能够使用一个相对较大的值,但是将持续时间设置为无限制会显示您的应用程序中的任何内存泄漏 - 有时最好现在就刷新再说一遍。
考虑到服务器和客户端之间存在集线器和交换机以外的基础设施的情况,您需要提供一种机制来检测和重新建立断开的连接,而不管时间长短。当您弄清楚如何执行此操作后,然后:
断开的连接只是一个小的性能故障,不会对功能产生重大影响
然后添加记录丢失的连接的功能并由此确定最佳连接时间以消除 (1)
中描述的小问题是微不足道的