各渠道消息发送频率限制
本项目对各推送接口有默认的限流策略(可在管理后台「安全设置」中动态调整),同时各消息渠道平台自身也有频率限制,配置时需注意:
频率限制总览
| 渠道 | 平台频率限制 | 限制维度 | 说明 |
|---|---|---|---|
| 企业微信群机器人 | 20 条/分钟 | 每个 Webhook | 官方文档明确标注,超限返回错误码 |
| 企业微信应用 | ~200 次/分钟 | 每个应用 | 与接收人数相关 |
| Telegram Bot | 1 条/秒(同群) 30 条/秒(不同群) | 每个群聊 / 全局 | 超限返回 429,需等待 retry-after |
| PushPlus | 200 条/天 5 次/秒 | 每个 Token | 免费用户限制,会员可提升额度 |
| WxPusher | 200 条/天 | 每个 AppToken | 免费限制 |
| 飞书群机器人 | 50 次/分钟 | 每个 Webhook | 自定义机器人限制 |
| 钉钉群机器人 | 20 条/分钟 | 每个机器人每群 | 超限被限流一段时间 |
| Server酱 | 5 次/秒 | 每个 SendKey | Turbo 版限制 |
| 微信公众号 | 10 万 条/天 | 每个模板 | 认证服务号,测试号同样 10 万/天 |
| SMTP 邮件 | 因服务商而异 | 每个账号 | QQ 邮箱/163: 约 500/天,Gmail: 约 500/天 |
| QQ 机器人 | 20 条/秒 | 每个机器人 | 全局限速 |
| Bark | 无限制 | - | 自建服务,无平台限制 |
| Gotify | 无限制 | - | 自建服务,无平台限制 |
| Meow | 无限制 | - | 自建服务,无平台限制 |
| 息知 | 30 条/分钟 微信上限 10 万次/天 | - | 永久免费服务,无推送数量限制计划 |
| Webhook | 无限制 | - | 取决于目标服务器 |
| 微信龙虾机器人 | 10 条/24 小时 | 每个微信号 | 连续发送 10 条后需用户主动发消息才能继续 |
| 元宝 Bot | 无明确限制 | - | 通过 WebSocket 长连接推送,受网络稳定性影响 |
| ntfy | 无限制(自建) 有限制(公共云) | 每个 topic | 公共云有速率限制;自建服务无平台限制 |
| PushDeer | 无明确限制(自建) 有限制(公共云) | 每个 pushkey | 官方公共云可能有限流;自建服务无限制 |
| iGot | 未公开精确限制 | 每个 key | 个人/小团队维护的公共云服务,建议关注限流情况 |
| 群晖 Chat | 取决于硬件性能 | 无明确 API 限流 | 自托管服务,受 NAS 硬件性能和网络带宽影响;高频推送可能造成资源压力 |
| ShowDoc | 无限制(自建) 有限制(公共云) | 每个 push URL | 官方公共云可能有限流;自建服务无限制 |
| 小爱音箱 | 未公开精确限制 | 每个设备 | 通过 xiaoii 底层 API 调用 TTS,受小米云端服务稳定性影响 |
提示
以上为各平台官方公开的限制信息,具体限制可能随平台政策调整而变化,请以各平台最新文档为准。高频推送场景建议优先选择无平台限制的自建渠道(如 Bark、Gotify、Webhook)。
本项目限流机制
除了各平台的频率限制外,本项目自身也提供多层限流防护:
三层限流防护
- Nginx 层:IP 级请求频率限制 + 并发连接控制(兜底保护)
- Express 全局层:按 IP 限制每分钟总请求数
- Express 接口级层:针对登录、注册、推送、入站等接口独立限流
推送接口双重限流
同时按来源 IP 和推送 Token 限流,防止 Token 泄露后被滥用。
动态配置
管理员可在前端「安全设置」页面:
- 一键启用/禁用所有限流规则(默认开启)
- 实时调整所有限流额度,修改立即生效,无需重启服务
注意
预构建的 Docker 镜像(magiccode1412/magicpush:latest)为 All-in-One 模式(Express 直接提供静态文件),不包含 Nginx,因此仅具备 Express 层的两层限流。如需启用 Nginx 层的兜底限流,请使用 docker-compose up -d 自行构建前后端分离镜像。