4

我计划创建一个可供成千上万用户使用的聊天应用程序。最初我在网上做了很多教程,并阅读了很多关于 PHP 和 MySQL 聊天应用程序的内容。在此搜索过程中,我遇到很多人说 PHP 中的聊天应用程序对成千上万的用户都有好处。他们中的大多数人建议使用 NodeJS。我在这里遇到的问题是这些帖子都没有说明为什么 NodeJS 是好的。

从我阅读的所有 PHP 聊天教程中,似乎在两个用户之间的聊天会话期间,他们正在交换的消息被发送并返回到数据库。我的问题是:

  1. 在 NodeJS 中,消息不是来回发送到数据库吗?
  2. NodeJS 是否将聊天消息保存在内存中或类似的东西中?
  3. 它与 PHP 和 MySQL 有何不同?
  4. 还是 NodeJS 根本不使用数据库?

有人可以帮助我了解聊天应用程序在 NodeJS 中是如何工作的吗?

我不是要代码片段。我想用文字来解释。我知道有很多关于 NodeJS 的教程,但我特别询问有关聊天应用程序的问题。您的解释将帮助我更好地理解某些事情。

4

1 回答 1

3

PHP 和 Node.js 的主要区别在于 Node.js 支持多线程和事件。

在 PHP 中,您必须定期 ping 服务器以获取新消息,每个用户都需要这样做。

在 Node.js 中,您可以实现更智能的解决方案。客户端 ping 服务器一次,只有在收到新消息时才得到响应。之后,您再次ping。

这极大地减少了服务器负载,并允许您同时处理更多用户。

于 2012-12-19T17:17:42.317 回答