【问题标题】:HTML5/Ajax chat room [closed]HTML5/Ajax 聊天室 [关闭]
【发布时间】:2013-05-28 22:41:57
【问题描述】:

我打算做一个基于 html 的聊天室。这是一个多用户聊天室,一次聊天的预期用户约为 5k。我最初的想法是,页面聊天将每 5 秒调用一次 javascript ajax 以从聊天室获取最新消息。但是,这在获取消息时会显示所有消息都已在同一时间发送。例如:每 5 秒出现一堵文字墙。为了解决这个问题,我坚持使用服务器生成的时间戳,并让 javascript 调用根据时间戳一个接一个地显示这些消息。

现在问题出在数据库和处理这个问题的服务器上。消息需要保存在数据库中,以便新访问者能够向上滚动并查看过去的聊天记录。现在我开始想象,每 5 秒查询一次数据库的 5k 个用户会杀死一个服务器。

有没有更好的方法来设计基于 html 的实时聊天?它将需要在 php.ini 中。

想到的另一件事是使用 php 作为服务器并利用其套接字功能。但是我不确定如何做到这一点。

【问题讨论】:

  • 3 票反对,没有一条评论来解释原因....我真的很讨厌。
  • webrtc 与 websockets 支持服务器将是要走的路。 PHP 并不是最好的。

标签: php javascript jquery html database


【解决方案1】:

有一种非常新的技术正在接管互联网的社会幽灵,这正是您所需要的。它被称为网络套接字。很抱歉,我目前无法提供任何链接,但您可以搜索它。如果您不想了解这项新技术的工作原理,或者它看起来太复杂,您可以随时使用 LONG POLLING。但是,如果您决定使用长轮询,请记住某些服务器对打开连接有限制!我希望这个答案对您有所帮助,并祝您在项目中好运!

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2012-03-15
    • 1970-01-01
    • 1970-01-01
    • 2012-12-10
    • 1970-01-01
    • 1970-01-01
    • 2010-12-09
    相关资源
    最近更新 更多