Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770
Форумы портала PHP.SU :: Версия для печати :: Многопользовательский фильтр в фоне
Форумы портала PHP.SU » » Вопросы новичков » Многопользовательский фильтр в фоне

Страниц (1): [1]
 

1. AlexandrKulik - 16 Февраля, 2019 - 12:35:10 - перейти к сообщению
Здравствуйте уважаемые профи, помоги с советом, уже долгое время не могу придумать как реализовать механизм фильтрации в кабинете для каждого пользователя.

К примеру есть кабинет в котором 100 пользователей, каждый может собирать данные (назову их просто данные) и необходимо реализовать механизм фильтрации, т.е. человек создает фильтр и запускает базу на фильтрацию ,в базе может быть и 1000 и 100 000 записей и больше, ясное дело что это все нужно делать в фоне.

Если бы фильтрацию запускал 1-2 человек то проблем бы и не было для каждого запускать свой демон и он бы крутился пока не выполнил задание, но если например все 100 запустят то это будет уже 100 демонов что будет давать нагрузку и будет что то вываливаться по сервер.

Сервер VPS 3 Гб Озу

Думал делать через сервере очередей типа Gearman, но тоже ситуация например если много кто запустил вчера на фильтрацию, то те кто сегодня запустят будут ждать пока очередь не отработает старая, а хочется что бы человек когда запустил то уже пошел процесс фильтрации данных

Подскажи как можно реализовать такую задачу, что бы процесс фильтрации запускался для пользователя когда он запустил, ну и если все запустят, как это обыграть, что бы сервер работал и не падал

У каждого пользователя есть база с контактами например людей, в ней может быть 100 000 контактов может больше и он хочет профильтровать ее убрать с нее ненужных, и такая база может быть у каждого пользователя.

Фильтровать нужно не сами данные которые в базе, в базе находятся к примеру только ID и по каждому ID нужно выполнять API запрос к другому сервису и получить полные данные по человеку и потом уже фильтровать их по пользовательскому фильтру
2. LIME - 19 Февраля, 2019 - 13:11:08 - перейти к сообщению
кэшировать данные у себя, либо попросить удаленный сервис реализовать фильтрацию

 

Powered by ExBB FM 1.0 RC1