制作聊天应用程序的更好方法


Better way to make chat application?

目前我正在制作一个聊天应用程序,其中只有管理员和用户聊天,没有用户对用户的聊天。设计是:每个聊天都存储在数据库中,每 2 秒用户和管理员发出一个 AJAX 请求(对 php 文件)以查看是否有新的聊天对话,如果有,将数据拉入文本框。一切似乎都很正常,而且运作良好。

问题是随着越来越多的用户在与管理员交谈的同时,AJAX 请求变得很多,并且通过测试,Web 性能已经下降,只有 5 个用户同时聊天。而且输入也很慢,每次用户按 Enter 时,他们必须先将数据输入数据库,然后管理员才能读取它(反之亦然)。

有人告诉我使用 JSON 是一种推荐的方法,但我不知道该怎么做,有人可以至少告诉我如果使用 JSON 的设计或流程会如何?还是有更好的方法?(顺便说一句,对于我目前的主机来说,目前无法使用node.js,所以不要把它放在建议列表中,我知道很糟糕)。

您应该将 AJAX 响应程序 phps 输出更改为 JSON。(例如,您可以使用 json_encode PHP 函数。你应该在javascript中解析(eval)它。

我有点怀疑。它认为它可以将网络使用量减少50%以上。

也许你可以尝试一个消息队列,比如0mq或rabbitmq。周围有很多聊天示例。