# 450 4.7.1 请求的操作未执行：超出速率限制

- **ID:** `communication/smtp-rate-limit-exceeded`
- **领域:** communication
- **类别:** runtime_error
- **错误码:** `450 4.7.1`
- **验证级别:** ai_generated
- **修复率:** 82%

## 根因

SMTP 服务器每连接或每发件人的速率限制已超出，通常由于短时间内发送过多邮件。

## 版本兼容性

| 版本 | 状态 | 引入 | 弃用 |
|------|------|------|------|
| Postfix 3.7 | active | — | — |
| Exim 4.96 | active | — | — |
| Sendmail 8.17 | active | — | — |

## 解决方案

1. ```
   Implement exponential backoff with jitter: wait 2^retry seconds + random(0-1s) before retrying. Example in Python: `time.sleep(min(2**attempt + random.uniform(0, 1), 60))`.
   ```
2. ```
   Throttle sending rate to N emails per second per connection (e.g., 10 emails/s) using a token bucket algorithm.
   ```

## 无效尝试

- **** — Increasing connection pool size without throttling may hit per-sender limit faster. (70% 失败率)
- **** — Switching to a different SMTP port (e.g., 587 vs 465) doesn't bypass rate limits. (90% 失败率)
- **** — Adding more sender addresses without reducing per-address rate still triggers limits on each. (60% 失败率)
