我打算做一个基于HTML的聊天室。这是一个多用户聊天室,一次聊天的预期用户大约是5k。我最初的想法是,页面聊天会每5秒钟进行一次javascript ajax调用,以便从聊天室获取最新消息。然而,在获取消息时,它看起来就像所有这些消息同时被发送一样。例如:每隔5秒发一面文字。为了解决这个问题,我尝试使用服务器生成的时间戳,并让javascript调用根据时间戳显示这些消息。
现在的问题是数据库和处理此问题的服务器。消息需要保存在数据库中,以便新访问者能够向上滚动并查看过去的聊天记录。现在我开始想象,每5秒查询数据库的5k用户会杀死服务器。
有没有更好的方法来设计基于HTML的实时聊天?它需要在PHP中。
我想到的另一件事是使用php作为服务器并利用其套接字功能。但是我不确定如何做到这一点。
答案 0 :(得分:2)
有一种非常新的技术正在接管互联网的社交幽灵,这正是你所需要的。它被称为websockets。我道歉我现在无法提供任何链接,但你可以搜索它。如果您不想了解这项新技术是如何运作的,或者看起来太复杂,您可以随时使用LONG POLLING。但是,如果您决定使用长轮询,请记住某些服务器有限制打开连接!我希望这个答案对你有所帮助,祝你在项目中好运!