Email Queue Pattern
Process emails asynchronously with database-backed queues for reliable delivery, automatic retries, priority levels, and scheduled sending.
What's Included#
- Database-backed email queue with priority levels and scheduling
- Queue worker for processing pending emails in order
- Automatic retry logic with configurable max attempts and backoff
- Scheduled email delivery for reminders and digests
- Batch processing for newsletter distribution
- Dead letter handling for permanently failed emails
Usage#
Via CLI#
Loading code block...
Via AI Assistant#
Ask your AI assistant:
- "Use the email queues pattern from Bootspring"
- "Apply the Bootspring email queues pattern to my project"
Key Considerations#
- Never send emails synchronously in request handlers; always queue for async processing
- Implement exponential backoff for retries to avoid overwhelming the email provider
- Set a maximum retry count and move permanently failed emails to a dead letter queue
- Process high-priority emails (password resets) before low-priority ones (newsletters)
- Monitor queue depth and processing latency to detect delivery issues early
Related Patterns#
- Transactional Email - Email sending
- Email Templates - Template design
- Email Tracking - Open and click tracking