我应该使用哪个node.js套接字引擎?

时间:2014-02-12 14:27:28

标签: javascript node.js websocket socket.io engine.io

我正处于一个项目的开始,该项目旨在构建跨越网站和Android应用程序的实时聊天应用程序。由于我想阻止对各种API调用的持续轮询,我想使用websockets(我没有经验),在这个过程中,我认为学习node.js是个好主意。所以我需要开始为node.js使用websockets lib。为此,我看到有很多选项。我最常读的是socket.io。

围绕SO我也读到socket.io v0.9非常错误,我看到有多个关于engine.io的引用是来自socket.io版本1.0的socket.io的新后端,据说它正好在拐角处”。所有这些消息都来自2012年(this one for example),当我看到socket.io website时,我发现它们仍处于v0.9,这让我想到了几件事:

  • 是socket.io还在积极开发吗?
  • 是socket.io一个可行的选项,还是我需要驻留到另一个库?
  • 你建议哪一个容易启动,或者node.js现在是否实现好的套接字(例如使用net.Socket)?

欢迎所有提示!

1 个答案:

答案 0 :(得分:3)

  

socket.io还在积极开发吗?

https://github.com/learnboost/socket.io

  

master:authored 7小时前

所以它现在正在开发中。

  

socket.io是一个可行的选择,还是我需要驻留到另一个库?

我们在几个项目中使用socket.io,没关系。也许你应该调整你的心跳值。对我们来说,这是:

app.io = io.listen(app);
logger.info('Setting up basic configuration.');
app.io.set('heartbeat timeout', 50);
app.io.set('heartbeat interval', 20);
app.io.set('browser client minification', true);
app.io.set('store', new io.RedisStore(ioStoreSettings)); // also don't use in-memory store, it is hardly not recommended