0

我想在我的网站用户之间建立一个简单的消息系统。为此,我为消息构建了如下表:

tbl_messages
 -pk id int
 -fk sender_id int
 -fk receiver_id int
 -is_read boolean 
 -send_date datetime

当用户在浏览器中打开我的网站并且其他用户向他发送消息时,我想在打开接收者页面时向接收者用户发送通知消息(类似于 1 条新消息或(3)消息)。例如:facebook 通知,stackoverflow 通知在新评论到达时出现

我通过使每 2 分钟调用一次 javascript 函数来执行此类操作。此函数发出 ajax 请求以输出通知。我想知道这是正确有效的方法吗,因为我必须每 2 分钟执行一次 sql 查询,如果我的表中有很多记录,这样的操作会在数据库上产生更多的负载。

除了这个,我还可以执行哪些其他解决方案?

4

1 回答 1

1

如果你正确地索引了你的数据库并设计了你的程序,那应该不是问题。

您将无法设计像 Facebook 和其他一样响应迅速的通知系统,因为使用 PHP 创建推送系统几乎是不可能的。

如果您有专用/虚拟化服务器(而不是共享主机),请查看诸如 NodeJS 之类的东西。

于 2012-07-05T14:35:06.920 回答