kevin
b158b8f1f5
feat(outbound): 外发投递多线程化(worker 池 + 每域并发上限)
- 1 个 dispatcher + N 个 worker 池(默认 4)并行投递,启动时立即
扫描清空积压;workers=0/1 退化为串行(旧行为)
- 每收件域并发信号量(默认 2,配置 max_concurrent_per_domain),
防对单个 MX 域并发过多被判定滥发;中继模式统一按 relay 限制
- store 新增 Claim 原子抢占(sending 状态防重复投递),并发下
每封邮件恰好投递一次
- 新增配置 workers/batch_size(替代硬编码 50);dispatcher 改为
抢占后投递、worker 只负责发送,退避重试/退信/状态机不变
- 新增测试:真并发、串行回退、每域上限、临时/永久失败、错误隔离、
Claim 并发原子性与状态可抢占性;-race 无警告
2026-08-19 19:23:27 +08:00
..
2026-08-19 16:45:21 +08:00
2026-08-19 16:45:21 +08:00
2026-08-19 19:23:27 +08:00
2026-08-19 19:23:27 +08:00
2026-08-15 17:18:54 -04:00
2026-08-15 17:18:54 -04:00