Пользователи подписываются на электронные письма, содержащие последние видеоролики, но также устанавливают, когда следует получать эти письма.
Subscription(user_id, frequency, day, time, time_zone)
user_id | frequency | day | time | time_zone
1 | daily | null | 16:00 | GMT
2 | weekly | friday | 11:00 | UTC
3 | weekly | monday | 18:00 | EST
Как мы можем отправлять электронные письма с точным временем и частотой, выбранными пользователями в их часовом поясе, без зависания (например, отправка двойных писем или отсутствие времени).
Единственные частоты - ежедневно и еженедельно, если каждый день, то день равен нулю.
Я использую redis как базу данных для этого, дайте мне знать, как сделать это правильно!