【发布时间】:2011-08-16 21:48:39
【问题描述】:
我目前正在开发一个简单的 PHP 应用程序,用户可以在其中相互发送消息。消息存储在 SQL 数据库中。我想在每个页面的菜单中统计未读消息,这样用户可以快速查看是否有新消息,而无需定期检查收件箱。
虽然这可能是一个容易解决的问题,但我不知道最好的方法是什么,就性能而言:
- 在每次页面加载时对未读消息执行普通 SQL COUNT()(立即通知更改,但可能会严重影响性能?)
- 做同样的事情,但将结果缓存 X 分钟(我们会造成烦人的延迟)
- 与 2. 相同,但仅在我们读取消息或向我们发送消息时更新(可能会占用大量 RAM/对磁盘造成压力,因为我们创建了一个持久条目/file per user : 我们不能将它存储在 $_SESSION 中,因为我们需要在另一个用户向我们发送消息时更新它)
我所有的解决方案都是基于服务器的,因为我对 JS 不是很熟悉。但是如果使用 JavaScript 存在更好的解决方案,那也没关系。
感谢您的帮助!
【问题讨论】:
标签: php javascript sql message