mazurkin пишет:
> Собственно надо решить проблему в свете больших нагрузок и
> масштабируемости. Я пока вижу два варианта, и оба мне не нравятся.
В свете больших нагрузок я бы выбрал что-то более близкое к варианту 2, т.к. вариант 1 банально ограничен одной БД, и при шардинге потребует лишнего дублирования информации.
А так — в хранилище #N имеем профиль юзера M, в котором есть такой объект как "лента активности друзей". Событие от друга броадкастится по инстансам его друзей (читателей в случае ЖЖ), включая нашего юзера M, и обрабатывается на его стороне — кладется в ленту. Также никто не мешает вести ленту собственных действий — тогда в случае добавления нашего юзера в друзья или банального сбоя мы на основании этого первоисточника все восстанавливаем.
Posted via RSDN NNTP Server 2.1 beta