Я занимаюсь разработкой веб-сайта, который извлекает цены для пользователей (посредством просмотра веб-страниц) и уведомляет их, если цены соответствуют желанию / желанию / желаемой цене пользователя. Пользователи смогут установить, как часто они хотят, чтобы приложение очищалось. Например:
- Пользователь A устанавливает очистку приложения каждый час
- Пользователь B устанавливает очистку приложения каждые 2 часа
- Пользователь C устанавливает приложение очищать каждые 3 часа
и т. д.
Я знаю, что мне нужно реализовать планировщик или очередь, и я просмотрел следующие библиотеки:
Все кажется разумным, но моя проблема в том, что я не знаю, что будет лучше масштабироваться. Новые задания будут добавляться каждый раз, когда появляется новый пользователь, и задание будет помещаться в очередь в зависимости от того, когда пользователь устанавливает свои предпочтения. Например:
- приложение установлено для очистки для user_1 в 14:30 ET
- new user_4 устанавливает приложение для очистки каждые 2 часа и отметку времени, когда это предпочтение было сохранено в 14:10 ET
- добавлено задание очистки в очередь для user_4
- очистки приложений для user_4
- приложение настроено для очистки user_1 в 14:30 ET
Кроме того, задания могут быть удалены из очереди, если пользователи больше не хотят получать данные.
Я начинаю думать, что, возможно, просто слишком много думаю об этом, когда набираю текст, но мне хотелось бы получить некоторые рекомендации по этому поводу.