我面临的情况是:
我有一个php + mysql Web应用程序。多个用户共享同一数据库中的资源。 我希望实现一项功能,即每当数据库记录(创建,更新或删除)发生更改时,其他用户都会立即得到通知。
我正在考虑使用ajax推送引擎(APE),但不确定大局如何。
(1)是否需要一个脚本不断检查last_update时间戳并在检测到新的更改时向客户端发送通知?
OR
(2)每次对数据库表执行任何操作后,都会向客户端发送通知,告诉他们重新加载数据?
哪一个更好或者有关如何实现这个的任何其他建议?
提前感谢!
答案 0 :(得分:2)
您最好的选择是#2,当您写入数据库时,您的更改正在发生时,即应该推送。
class DatabaseModel
{
...
function save($data)
{
... // your db query
after_save();
}
function after_save()
{
// push changes out using some other object
// e.g. MyPushClass::something_changed($this);
}
}
答案 1 :(得分:1)