用途:用于可靠地发送事务邮件与营销邮件,典型场景包括注册确认、密码重置、订单通知、营销活动以及摘要/汇总邮件。
主要能力:提供 EmailService 发送接口,支持模板渲染、优先级(high/normal/low)、定时发送、标签、批量发送;通过队列实现去重、限流、重试与优先级处理;下游对接 SendGrid/SES 等邮件服务商完成模板渲染、投递以及退信/投诉处理;并提供 Webhook 处理退信、投诉与投递事件,维护抑制列表。
使用方式:资料给出 TypeScript 与 Python 两种实现。TypeScript 基于 bullmq 与 ioredis,调用 emailService.send({ to, template, data }) 入队,Worker 使用 @aws-sdk/client-ses 发送并记录日志;Python 基于 redis、rq 与 boto3,通过 EmailService.send 入队,由 send_email_task 调用 SES 发送。Webhook 示例使用 Express 路由接收 SES(经 SNS)通知。
限制与注意:资料未提供具体安装命令、依赖版本、价格或平台限制。最佳实践建议始终异步入队、处理退信与投诉、使用模板、加入退订链接并跟踪投递指标;常见错误包括同步发送、忽略退信、无限流、缺少退订机制以及发送前未校验邮箱地址。