diff --git a/AGENTS.md b/AGENTS.md index cc30312..4e74e92 100644 --- a/AGENTS.md +++ b/AGENTS.md @@ -115,7 +115,17 @@ Redis: 10.8.0.252:6379 ``` **代理说明:** -- 服务器nginx stream转发MySQL(3306)和Redis(6379)到阿里云RDS +- 服务器nginx stream转发MySQL(3306)和Redis(6379)到阿里云RDS —— + ⚠️ **这个转发只为「本地开发机经 ZeroTier 访问阿里云」而存在**(监听 `10.8.0.252:3306/6379` 等)。 + **服务侧(生产 `/data/pms`、测试 `/data/pms_dev`)一律直连阿里云**: + `DATABASE_URL=...@rm-bp1bb7yiv5n8z4uvp.mysql.rds.aliyuncs.com:3306/...`、 + `REDIS_URL=...@r-bp1lsezvgzmgtwhbtg.redis.rds.aliyuncs.com:6379/...` + (2026-09-20 已改;改前生产走的是 `127.0.0.1:6379/3306` —— 那两个 **nginx 监听**的回环端口)。 + **为什么必须直连**:走 nginx 时 `systemctl reload nginx` 会切断所有经它转发的连接 → 四个服务同时 + `RPOP 错误: broken pipe`(实测每次 reload 4 条 ERROR);更要紧的是**生产的库/缓存通路会依赖一个 + 本来只给开发用的转发层**(`stream{}` 一旦配错 nginx 起不来 → 整平台连不上库)。 + 改造后实测:reload nginx 前后生产连接数不变(5→5)、生产与测试 ERROR 均为 0。 + `127.0.0.1` 的 stream 监听**保留**(无副作用,本地开发/回环排查仍可用),但**服务不再用它** - systemd自启,`Restart=always` 自动恢复 - 本地直连 `10.8.0.252`,无需SSH隧道