Phalcon php vs node.js

我们将为我们的应用程序开发其他服务器(并且所有逻辑都在客户端上)。 所以我们想用Phalcon php,但是我们也需要创build实时的聊天系统,使用node.js更容易。 这让我们考虑使用node.js而不是phalcon

不幸的是,我们在node.js中并没有很好的performance,我们喜欢phalcon的performance和内在美。

问题是,有没有人比较phalcon和node.js的性能? 可能最好只使用node.js来处理长轮询聊天请求,但是我不喜欢项目与不同工具连接的时候。

你正试图比较两个不同的事情国际海事组织。

node.js有很多的function和灵活性,但是Phalcon也是如此。 如果您想使用Phalcon创build聊天应用程序,那么您需要在浏览器中实现某种轮询机制,每隔X秒刷新一次聊天窗口。 从数据库获取/插入数据将是Phalcon的工作。 JavaScript将被用来进行轮询,即每隔X秒刷新聊天页面。

这种方法的问题在于,您可能每打开一个聊天应用程序的客户端都会每隔X秒钟点击一次Web服务器,从而刷新聊天内容,即使没有消息。 这可能会非常迅速地变得非常密集。

node.js能够立即将消息发送给订阅的客户端。 Web套接字可以做相同的事情,我相信。

看看这个video,这将给你一个如何轻松实现的想法:

https://www.youtube.com/watch?v=lW1vsKMUaKg

这个想法是使用不会给你的硬件造成负担的技术,而是与之协作。 有一个“订阅”通知系统(如套接字或node.js)减less了应用程序的负载,因为只有订阅的客户端接收到新的消息,并且不需要来自聊天客户端的完整刷新。

Phalcon以其速度非常适合后端,可以用来构build消息,然后将消息传递到传输层并发送给客户端。 根据你想如何实现这个,有很多的select,你可以很容易地混合和匹配技术:)

我的build议是使用你已经知道的,只为聊天应用程序尝试nodejs。
主要是因为你说你没有经验,所以,因为聊天应用程序是很多人做的,你会发现很多的例子。

通过这样做,您将从节点学到很多东西,甚至可以考虑从Phalcon迁移,如果它适合您的需求,例如使用expressjs提供的function。

我不会根据性能select一个。

正如@Nikolaos Dimopoulos所说,你试图比较两种不同的东西。

但是,这里是我的build议,虽然您对PhalconPHP框架有所了解,并且希望从Phalcon的速度和性能中受益,您可以在Phalcon FW中实现Web应用程序,在Node.JS中实现聊天系统作为服务。

如果您的Web应用程序“Phalcon应用程序”需要从后端推送消息,那么可以使用http://elephant.io/库,我之前已经使用Yii框架和Node完成了此操作,并且工作完美。