2011-08-19 87 views
6

我想创建一个聊天应用程序,它将使用php/codeigniter来执行视图和用户界面。我一直在阅读大量推荐node.js或socket.io的stackoverflow上的帖子。然而我也碰到过APE(Ajax Push Engine)。我对这两者都不甚了解,并在想知道该用哪个。聊天应用程序:node.js或APE?

我在node.js上阅读了很多关于它的好东西,但关于它的主要问题是它比较新,而且没有太多真实世界的网站测试/使用它。

另一方面,APE呢。它看起来与node.js类似。但就像我说的,我不知道要选哪一个。

哪一个更适合创建聊天应用?

谢谢!

+0

Discalators:我已经使用了socket.io/node(以及socket.io/Tornadio)的许多项目,但从未使用过APE。就创建聊天应用程序而言,“更好”,他们都是完美的能力。正如我所看到的,socket.io功能更强大一些(例如,它利用WebSockets),而APE则更加稳定(在过去一个月中,socket.io的API已经发生了根本性的变化)。在此处查看更多信息:http://stackoverflow.com/questions/6513367/what-are-the-main-differences-between-ape-and-node-js –

回答

2

像你一样,我不熟悉APE,但是node.js上的socket.io带有chat app as it's main example app

确实,目前没有很多站点使用Node.js。然而,Socket.io可能被认为是Node的'杀手应用程序',因此它有相当多的谈话/工作。

我假设APE有稳定的API,但是,哪个socket.io可能不一定有 - 例如,0.7版本是一个相当广泛的API更改更新。发布socket.io spec时可能会发生这种情况的次数较少。

+0

在我看到您的评论...之前写了这篇文章...仍然相关尽管如此,我想。 socket.io规范的出版物表明它变得更加稳定,甚至可以朝多个服务器实现方向发展,然而这有点推测。 – Stoive

+0

在使用node.js时,我应该几乎总是使用socket.io? – Derek

+1

不,如果我需要将'推送'功能集成到某个东西中,我会努力将Node.js + Socket.io与任何已存在的后端(PHP/.NET/JSP /其他)使用。例如,我尝试用.NET找到一些东西,并得出结论,我最好用套接字创建一个“套接字”层。io – Stoive

6

我玩了一点node.js,尝试了socket.io - 但最终做了一个APE的大项目。

我认为,一如既往地存在着你想达到的目标。只比较服务器部分:使用node.js,您将得到一台本身不会执行任何操作的机器,您需要自己编写它(或使用库)使用APE,通道和连接的处理已经内置(已编译C)。仍然需要用JS构建自己的逻辑部分 - 或者使用示例。

在客户端,socket.io提供了三个命令一个客户端框架 - 和APE有它APE_JSF处理该连接(这比socket.io有关渠道带来了更多的功能)

就个人而言,我更喜欢APE即使缺乏初学者的文档。但是请记住,APE不会提供文件/图像,它不是一个完整的Web服务器,但是它可以处理〜10K并发用户的实时推送优化。

+0

我一直在关注你的帖子,看起来你并没有阅读node.js支持本地C/C++模块以及它们很难写,我承认它们很难找到,但在C中的MongoDB BSON解析器是一个很好的例子本地节点如何获得 – ShrekOverflow

+1

我同意APE比NodeJS稳定得多,但令人困惑的文档需要升级,否则新开发人员不会乐意使用它。 – ShrekOverflow

+0

你对这两个意见都是正确的:除了编写JS 之外,我没有深入研究node.js选项而且APE文档缺少一些东西,很难进入主题 但是,一旦你掌握了它,你可以用它印象深刻的事情。 你仍然可以实现与节点相同,我只是认为当谈到纯粹的性能(> 10K用户)节点会得到它的问题 – Xosofox