#laravel
#laravel
Вопрос:
Я хотел бы иметь возможность отправлять электронное письмо пользователю, как только в базе данных будет достигнуто число (это число найдено благодаря вычислению) Пример: я покупаю на 1 месяц возможность использовать API 100 раз, и после 80% потребления я получаюэлектронное письмо, чтобы предупредить меня.
Я мог бы сделать это очень плохо, поставив условие для каждого использования api, которое проверяет, достигаем ли мы 80% или нет.
Но для меня есть другой более чистый способ сделать это, у вас есть какие-либо идеи? Разве это не связано с событиями?
Заранее благодарю,
Ответ №1:
Я предлагаю вам использовать для этого планирование Laravel; например, проверяйте это число каждый день или час (зависит от вашего случая), и если это число равно 80 или более, отправьте электронное письмо (чтобы вы могли сделать это с помощью очередей Laravel для повышения производительности)
Комментарии:
1. Проблема в том, что это должно быть мгновенным, чтобы пользователь был проинформирован в режиме реального времени о достигнутых 80%. Если это происходит каждый день, и он получает почту через 6 часов после превышения 80%, это не очень последовательно. Но я не вижу другого способа, кроме как с планированием задач, и каждый час все в порядке.
2. Вы даже можете делать это каждые 5 минут (но вы должны выбрать оптимальный период для вас по соображениям производительности)
3. Хорошо, я вижу, и он потребляет много такого рода вещей? Я признаю, что понятия не имею. И с точки зрения чистоты, это лучше сделать, и что это немного не так, или добавить условие, которое проверяет в контроллере?
4. Если вы получите всех пользователей и добавите их в очередь ( laravel.com/docs/8.x/queues ) и пусть с этим справится задание очереди; я не думаю, что это будет тяжело.
5. Хорошо, я вижу немного лучше, как все это сделать, большое вам спасибо за вашу помощь! Скоро увидимся 😉