parser

Написать ответ на текущее сообщение

 

 
   команды управления поиском

Ответ

Denis Popov 31.05.2010 06:40

Вполне логичное решение для обхода проблемы с тяжелыми выборками. Из минусов остается лишь избыточность данных. это означает что стоит заранее продумать возможность горизонтального масштабирования.
Вопрос в том насколько это оправдано. Если учитывать что это будет делаться в фоновом режиме, то и 50000 не должно стать проблемой. А если это 5 миллионов.
Вполне оправдано если проект в этом нуждается. 5 миллионов апдейтов будут выполнятся чуть дольше чем 50 000 вот и все. тут должна пригодится репликация master-slave. Тему AMQP, который идеально подходит для решения задачи доставки информации о событиях пользователям, можно вообще развить и использовать не только для фоновых операций, а сделать очереди для каждого пользователя, например.

Вообще я не спец по оптимизации таких крупных систем, но считаю что решать проблемы оптимизации стоит решать по мере их поступления (впрочем это неизбежно). Так как, всех сложностей, с которыми столкнется проект в жизни, предугадать сложно. Да и оно может того не стоить если проект не поплывет.
Однако, это не отменяет проектирование грамотной архитектуры на раннем этапе.