延迟ajax响应vs套接字?的node.js

时间:2013-10-22 19:33:41

标签: ajax sockets

在我的多人游戏中,我需要服务器在其他玩家进入游戏时向客户端发送一些数据。为此,我一直在想我需要:

  1. 插座
  2. Ajax每X秒请求一次
  3. 但现在我正在考虑延迟ajax。想象一下,客户要求服务器“玩家进入游戏?”并且服务器现在没有回复,但它将等待该玩家进入,然后它将响应第一个客户端“是的,玩家2进入游戏”。

    现在服务器上的资源怎么样,哪种方法的服务器资源更轻?

    1. 套接字
    2. 延迟ajax
    3. 我认为延迟的ajax会保持连接打开,所以它也不是很好,但请告诉我。

      由于

1 个答案:

答案 0 :(得分:0)

  1. Comet技术是一种实现方式 长时间轮询你需要“延迟AJAX”。
  2. 另一个选项是WebSockets,但它不是一个新功能 许多浏览器都支持。
  3. 普通插座是最简单的方法,只要他们不这样做 需要大量的流量(通过持续的ajax轮询), 并且可以处理“真正的全双工”。如果延迟是优先考虑的最佳选择。
  4. 如果游戏很大,最好的方法是使用非阻塞的IO + Reactor模式, 这将允许您同时服务数百万个请求 服务器。并以套接字的方式。与3不同,内存消耗要少得多。