我正在使用Ajax和http请求开发一个小应用程序。 目前,我每秒向服务器发送一个请求,以检查是否有更新,如果有,则获取并下载数据。
当用户与应用互动时,会修改此时间配置文件,但这可以忽略不计。
我只是想知道..我可以向服务器发送无限循环的请求。通常更多的请求,更多的应用程序将是快速的。但是,服务器收到的请求太多了吗?
但是从请求到另一个请求的时间是多少?
我已经阅读了有关令牌的内容,但我无法理解哪种方法可以检查服务器是否有更新。提前谢谢
答案 0 :(得分:1)
长轮询是这里的主要选择之一。您应该查看服务器,如果您希望持续连接大量用户,则可以看到对持久HTTP连接的良好支持。
例如,Apache webserver本身就会为每个连接打开一个线程,对于许多拥有持久连接的用户来说这可能是一个值得注意的挑战,你最终会遇到很多线程(有些方法可以在Apache中解决它如果需要,可以进一步研究)。 Jetty是一个基于Java的Web服务器(在我个人的收藏夹中),它使用更高级的网络库,以更加对数和高效的方式扩展与线程的连接,实质上将连接置于睡眠状态,直到检测到流量输入/输出。
以下是一些链接:
http://en.wikipedia.org/wiki/Push_technology
http://en.wikipedia.org/wiki/Comet_(programming)
http://www.einfobuzz.com/2011/09/reverse-ajax-comet-server-push.html