Может уже обсуждалось, но не могу найти подобного. Есть задача, пользоватали ставят свои задания в кабинете на определенные дни и часы, т.е. есть для каждого пользователя платеровшик где он указывает в какие дни в какой период времени выполнить его задания. Как реализовать хранение и постоянную проверку? В голову приходит хранить записи в базе и демоном дергать базу и проверять есть ли на текущий момент у когото задания, если есть то в Gearman очередь ставим и выполняем. Но тут мне не нравится постоянные запросы, это будет нагржать базу, а каждые 3-5 минут делать как то сильная большая пауза. Дайте совет как лучше реализовать хранение задач и мониторить наступления времени выполнения и запуск на выполнение. Думал уже хранить задачи по времени в sqllite но там есть свои проблемы с записью если много пользователей будут ставить Примерно где то 200 пользователей примерно у каждого в день планируется 5000-7000 задач т.е. обьем тоже не малый, если все поставят то это 1000000-1400000 записей в базе и мониторить когда какая наступила. Прошу помощи господа профи, дайте совет как лучше реализовать Сервер VPS Ubuntu 18 ОЗУ 4гб диск 120 гб
Да вообще пофиг. Ставьте ежеминутеый крон. Простой запрос по сравнению времени не такая большая нагрузка на бд А вот 5тыс задач в день на человека - имхо что то нереальное. Я бы сдох от такого кол-ва задач, даже если просто записать их