Мне интересно услышать ваше мнение о том, как лучше всего реализовать поток социальной активности (наиболее известный пример - Facebook). Проблемы / проблемы включают в себя:
- Различные виды деятельности (отправка, комментирование ..)
- Различные типы объектов (пост, комментарий, фото ..)
- 1-n пользователей, участвующих в разных ролях («Пользователь x ответил на комментарий пользователя y к записи пользователя Z»)
- Различные представления одного и того же элемента действия («Вы прокомментировали ..» против «Ваш друг прокомментировал» против «Пользователь x прокомментировал ..» => 3 представления действия «Комментарий»)
... и еще кое-что, особенно если вы берете его на высокий уровень сложности, как это делает Facebook, например, объединяя несколько элементов активности в один ("пользователи x, y и z прокомментировали эту фотографию")
Будем благодарны за любые мысли или указания на шаблоны, документы и т. Д. О наиболее гибких, эффективных и действенных подходах к реализации такой системы, модели данных и т. Д.
Хотя большинство проблем не зависит от платформы, скорее всего, я в конечном итоге внедряю такую систему на Ruby on Rails