ios – 如何解决由HTTP持久连接错误导致的超时问题?
我最近一直在努力解决HTTP超时问题.经过一个多月的调查,我很确定它是由错误的HTTP持久连接引起的.详情如下: >这是一个iOS应用程序. >杀死并重新启动应用程序. >我的分析:从行为来看,问题似乎是由一个糟糕的持久连接引起的.所有后续请求都继续使用此持久连接,因此所有请求都会因NSURLErrorTimedOut而失败.从解决方法中我们可以看到所有这些都有效,因为它们会导致丢弃坏的持久连接并创建新的持久连接. 我的问题: >还有其他人遇到过这个问题吗? 更新: 我通过使用CFNetwork并直接控制Connection头,成功地在iOS 8上缓解了这个问题.然而,在iOS 9上似乎问题变得更糟. 由于我希望Apple能够在iOS 9上修复它,我终于开了一个雷达:http://www.openradar.me/22770738. 如果你也遇到这个问题,请复制我的雷达,或者更好的是,如果你有一个更可靠的可重复样本,你可以发射你自己的雷达. 最佳答案 经过2周的研究,我可以回答问题3和4:> nginx的持久连接超时在服务器上设置为5秒,这不应该是原因.服务器工程师发现这些超时请求实际上是正常接收和响应的.所以它更可能是客户端问题.由于我有一个minimal reproducible code来排除我的代码作为原因,原因应该在iOS中. (编辑:十堰站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
- 为解析服务器IP的所有服务器名称提供Nginx SSL证书
- angularjs-$http.post请求标头字段Access-Control-Allow-He
- nginx – 在子URI下提供Tomcat
- nginx从1.2.1更新到1.9.2后,PHP-FPM状态页面为空白
- 通过SSL使用nginx的PHP websockets
- nginx访问502 gateway,*1 connect() failed (111: Connect
- 找不到MySql服务器PID
- 重定向-如何在发布请求nginx上删除尾部斜杠
- 在nginx上更改标题’Django administration’文本
- python-Django nginx管理媒体