我正在開發一個Rails 3.2應用程序,供用戶創建,讀取和更新多種報告。我們使用MySQL和Redis。當X記錄沒有在X時間內更新時通知用戶
我想通知用戶,當他們的報告之前的X個月沒有更新時,他們會在瀏覽器的個人資料頁/儀表板頁面上向他們顯示通知。
我寧願這樣做異步。
在某些時候,我還希望通過應用內通知進行實時通知,以便在用戶正在查看的報告已更新或某人喜歡他們的報告時通知用戶。從概念上講,我正在考慮要去這樣做是最好的方法......
運行的SQL查詢和檢索具有update_at超過3個月以上領域的所有報告,並創建一個鏈接的通知記錄中的cron作業該用戶和報告。只有當用戶沒有現有通知時,纔會創建新的通知記錄。
一個後臺作業,使用像Resque這樣的工具,在整個一天定期檢查數據庫。通知存儲在隊列中。這看起來好像可以更好地適應更強大的應用內通知功能。
這些是我唯一的兩個選擇嗎? 是否有更好的異步方式來偵聽數據庫,並在3個月內沒有更新其中一條記錄時通知用戶?是否需要在此實現一些websockets?