Add deployment traces for the JPpro proxy node, RackNerd origin hosts, catproxy boundary changes, local speed checks, and Sub2API rate-limit behavior. Keep remote secrets excluded while tracking sanitized nginx, compose, plan, and operational memory documents.
3.5 KiB
3.5 KiB
主站测速与限速核对
日期:2026-05-26
本机链路测速结论
从当前本机网络直连测试,proxy.api.lilifamily.com 经 JPpro 的 HTTPS 轻量请求比 catproxy.lilifamily.com 直连 3c4g 更快、更稳。
| 测试项 | 直连 catproxy.lilifamily.com |
经 JPpro proxy.api.lilifamily.com |
|---|---|---|
/health 中位总耗时 |
0.763s |
0.559s |
/health 成功率 |
5/6,1 次 8s 超时 |
6/6 |
首页 HEAD / 中位耗时 |
1.817s |
1.315s |
| ICMP 平均延迟 | 238ms,10% 丢包 |
57ms,30% 丢包 |
测试命令使用 curl --noproxy '*' -4,本机未检测到 HTTP_PROXY、HTTPS_PROXY、ALL_PROXY 环境变量。ICMP 结果只作参考,HTTPS curl 结果优先。
nginx 限速边界
catproxy.lilifamily.com:3c4g 主站直连入口,当前没有 nginxlimit_req/limit_conn,也没有 IP 白名单。origin.proxy.api.lilifamily.com:3c4g 回源入口,当前没有 nginx 速率限制;只允许 JPpro IP151.242.164.72,并校验X-Proxy-Ng-Token。proxy.api.lilifamily.com/jp.proxy.api.lilifamily.com:JPpro 入口节点,有 nginx 按客户端 IP 的速率和并发限制。
JPpro 当前入口限制:
limit_req_zone $binary_remote_addr zone=req_per_ip:20m rate=10r/s;
limit_req_zone $binary_remote_addr zone=auth_per_ip:10m rate=10r/m;
limit_conn_zone $binary_remote_addr zone=conn_per_ip:20m;
limit_conn conn_per_ip 50;
limit_req zone=req_per_ip burst=30 nodelay;
limit_req_status 429;
认证相关路径更严格:
limit_req zone=auth_per_ip burst=3 nodelay;
limit_conn conn_per_ip 10;
Sub2API 业务请求限速维度
Sub2API 的模型/API 网关业务请求不是按 IP 限速,而是按用户、用户+分组、API Key 额度做限制。
业务 RPM 计数 Redis key:
rpm:u:{userID}:{minute}
rpm:ug:{userID}:{groupID}:{minute}
含义:
- 用户级
rpm_limit:同一用户全局每分钟请求数上限,0表示不限。 - 分组级
rpm_limit:同一用户在某个分组内每分钟请求数上限,0表示不限。 - 用户-分组
rpm_override:管理员可给某个用户在某个分组设置专属 RPM。 - API Key 的
rate_limit_5h/rate_limit_1d/rate_limit_7d:按费用消耗窗口限制,不是请求次数。
登录、注册、验证码等公开认证接口另有应用内 Redis 限速,维度是 c.ClientIP()。
生产快照
通过 Tabby profile 个人-US-racknerd-0526-3c4g 查询 PostgreSQL 的非敏感限速字段:
- 用户
zizi2000email@gmail.com:rpm_limit = 0。 - 分组
briqt:rpm_limit = 40。 - 分组
omm:rpm_limit = 100。 - 分组
free日卡-20刀、plus号池-使用余额、free周卡-每天50刀、free月卡-每天60刀:rpm_limit = 20。 - 分组
pro号池-使用余额:rpm_limit = 30。 - API Key
briqt:rate_limit_5h = 300,rate_limit_1d = 500。 - API Key
free:rate_limit_1d = 50。 - API Key
omm:窗口额度均为0,表示不限。
后续如果用户反馈“主站请求被限速”,先判断入口:
- 走
proxy.api.lilifamily.com时,先看 JPpro nginx 是否返回429。 - 走
catproxy.lilifamily.com时,跳过 nginx IP 限速排查,直接看 Sub2API 业务层错误。 - 如果错误是
rate_limit_exceeded,优先查用户/分组 RPM 或 API Key 窗口额度。 - 如果错误来自上游模型账号
rate_limit_error,那是账号池或上游限流,不是用户/IP 限流。