我是一個新的初級開發者,加入了這個令人敬畏的社區。我正在開發我的第一個大型個人項目,並且我堅持這個特定部分。在Rails中構建像Facebook這樣的Feed通知系統的最佳方法?
我想創建Feed通知系統,如Facebook,具有以下特點:
- 跟蹤不同的模型和關係,例如:新贏得徽章,在訂閱模式的新意見,新我的帖子新帖子,我的帖子新的評論...
- 舉例來說,組活動,而不是有我的文章中的每個喜歡400活動,只有一個通知說「用戶X和399更喜歡你的帖子「
- 有可能標記通知不會再看到它們,至少你探索過去的通知。
- 可擴展性,良好性能,以及未來可能的集成APP例如與Iconic框架開發。
推送通知是可選的,如果用戶需要刷新頁面以查看新的通知,那麼也可以。
因此,我收穫了很多。我觀看了一些Railcast視頻,跟着教程,但我仍然不確定如何開始。
我已經考慮了以下方法:
- 使用public_activity寶石,添加一個新的一個新的領域「readed」的遷移。並思考如何管理分組活動。但我看到很多有關性能的抱怨。我預計第一個月在我的網站上有大約50000個用戶(我已經擁有這些用戶),500-1000個用戶的峯值在線。所以,也許這不是最好的方式......因爲我會有很多活動,很多「通知」和很多用戶。
- 使用像https://getstream.io/這樣的系統,因爲它們也具有RoR和Ruby可用的集成。這裏主要關心的是定價,因爲如果我沒有錯,檢查它與那些用戶數量,每個用戶每天大約10個通知,我可能會支付超過200美元的月份,並且一直保持增長用戶增長。
- 構建我自己的系統,也許使用Redis。但是,也許這太複雜了,需要很多時間才能獲得一個好的,有效的和有效的代碼。
因此,仍然認爲這些選擇,我不知道哪一個最適合我,或者如果它是另一種可能性。
如果有人問這些問題之前,請讓我知道你的想法和你認爲是正確的方法。
謝謝! :)
您預計第一個月有50,000個用戶?在一個人項目上?必須是一個主意。 –
@Jordan我已經有用戶,但現在只用一個wordpress。我只是想執行從WordPress的遷移到rails web應用程序:) – adriandelarco
將用戶通知限制爲10天是荒謬的。 Websockets是免費的。但是,現在這個問題太廣泛了。您使用寶石/ SaaS提供商,或推出自己的解決方案。這是一個偏好問題。無論如何,你需要對Rails有一個很好的理解來構建它。 Rails是一個非常大的話題。它可能會需要你一段時間來學習。 –