2012-05-15 64 views
0

我想要一種服務器端語言,當添加一個新的MySQL行時,只通知帖子所屬的用戶。我有一個基於訂閱的系統,所以我在想: 當在posts表中添加一個新的MySQL行時,服務器端語言將獲取該新帖子的所有者ID,並在保存訂閱者數據的表中查找它。如果在subscribee列中找到一個具有帖子所有者ID的行,它會向用戶發送一個新通知,並在該行中有用戶ID ... 我需要所有它,服務器和客戶端的幫助。Ajax輪詢用戶通知

+0

但你從字面上奠定了整個架構(這是一個發佈/訂閱通知系統做什麼) – jcolebrand

回答

0

僅在間隔內執行各種查詢以查看更改,並不是最佳方法。

我建議像redis的其他解決方案。您可以創建一個事件頻道,並訂閱ajax服務,並將evento從其他腳本發送到該頻道。

$redis->subscribe(array('channel1','channel2','channel3'), function ($redis, $chanelname , $msg) { 

    echo json_encode(array($chanelname => $msg)); 
    exit(0); 

}); 

和:

mysql_query('INSERT ....'); 

$redis->push('chanel1', $data); 

瞭解:https://github.com/nicolasff/phpredis