我打算做一个基于 html 的聊天室。这是一个多用户聊天室,一次聊天的预期用户约为 5k。我最初的想法是,页面聊天将每 5 秒调用一次 javascript ajax 以从聊天室获取最新消息。但是,这在获取消息时会显示所有消息都已在同一时间发送。例如:每 5 秒出现一堵文字墙。为了解决这个问题,我坚持使用服务器生成的时间戳,并让 javascript 调用根据时间戳一个接一个地显示这些消息。
现在问题出在数据库和处理这个问题的服务器上。消息需要保存在数据库中,以便新访问者能够向上滚动并查看过去的聊天记录。现在我开始想象,每 5 秒查询一次数据库的 5k 个用户会杀死一个服务器。
有没有更好的方法来设计基于 html 的实时聊天?它将需要在 php.ini 中。
想到的另一件事是使用 php 作为服务器并利用其套接字功能。但是我不确定如何做到这一点。