(дата создания, статус, дата сдедующего запуска) и этих тасок очень много и они будут очень много менять свой статус, больше нигде эта инфа про эти таски не нужна в системе, как обычно поступают? на отдельной бд или где то в памяти?
А очень много это сколько? И частая смена статуса - насколько частая?
ну например от одного пользователя может быть 200 000 тасок, и каждая из них будет менять свой статус из ожидания на завршенную или проваленую, ну и теперь с маштабируем пользователей на 500 хотя бы
Забатчи обработку тасок Вероятно, тебе даже не нужно очередь сюда добавлять Сделай отдельный воркер, который просто будет брать пачку актуальных тасок, локать их в редисе и обрабатывать
ну мне вот прилетает 5 лямов тасок от разных пользователей мне же нужно их сохранить сначало где то так? Ааа ты имеешь ввиду типо сохранять все таски в какуй то постгре, а потом воркер будет брать там с них пачками по 1000 к примеру и пихать в редис и после их выполнения обновлять статусы в редисе, после их выполнения синхронизировать статусы в монге и очищать редис и так поновой?
я правильно мыслю?
Что-то в этом духе, но не гарантирую, что мы друг друга поняли
хорошо спасибо
В зависимости от того, как долго хранятся данные и нужно ли тебе, чтобы они были персистентные, тебе разные архитектуры решения задачи могут подойти
я вот еще хз нужно ли соранять историю этих тасок или нет
Зависит от нужд пользователя
ладно так как это пет проект то сделаю без хранения истории, это что то меняет?
Обсуждают сегодня