【问题标题】:Where To Save Messages For Chat/Shout-Box?在哪里保存聊天/喊话框的消息?
【发布时间】:2011-09-14 20:35:42
【问题描述】:
我将创建公共聊天/喊话框,它会在几秒钟后刷新(几乎像 IRC 或其他东西)。
我的计划:
1) HTML 表单,
2) 使用 JavaScript 不允许正常提交该表单,
3) 保存提交的消息(问题来了),
4) 显示新消息(我猜是使用 AJAX);
我不确定将这些消息保存在哪里!我可以将它们保存在数据库中,但是......这可能非常慢,因为每个用户每隔几秒钟就请求新消息,对吧?我可以尝试优化,但我不确定如何...也许我可以将这些消息保存在其他地方?
【问题讨论】:
标签:
ajax
optimization
chat
livechat
【解决方案1】:
我不明白为什么数据库访问会很慢(假设它是网络服务器的本地) - 我的意思是,如果数据被永久访问并且数据库经过优化以有效地处理查询,那么数据肯定会存储在 RAM 中.
显然,您可以将数据存储在自己的数据结构中,然后定期将其保存到数据库中,但是您正在重新发明轮子,如果您的服务器崩溃,您可能会丢失数据。
我个人会做的是将数据推送给您的客户,而不是从他们那里提取数据(这似乎是您计划做的),这样您只需在有人登录或收到新消息时发送数据出现 - 这两种情况都不应该经常发生。