Clash Verge Rev 订阅数据的存储位置
每个 Profile 在 profiles/ 目录有独立 YAML 缓存;profiles.yaml 记录元数据(名称、URL、更新间隔、merge 链)。远程拉取成功后先写临时文件,校验解析通过再原子替换,避免半截文件导致内核加载失败。
每个 Profile 在 profiles/ 目录有独立 YAML 缓存;profiles.yaml 记录元数据(名称、URL、更新间隔、merge 链)。远程拉取成功后先写临时文件,校验解析通过再原子替换,避免半截文件导致内核加载失败。
Verge Rev 在 If-None-Match / If-Modified-Since 可用时携带条件请求。服务器返回 304 时跳过写盘与 API 重载,托盘仍显示上次同步时间。这对大型订阅(500+ 节点)可节省 2—5 秒解析时间。
配置页「更新」按钮可带 Cache-Control: no-cache 绕过 304,用于节点大面积失效时确认上游是否已推送新列表。
默认 0 */6 * * * 即每 6 小时整点执行。可改为 0 3 * * * 仅在凌晨 3 点拉取,降低办公时段意外重载概率。语法错误时 Verge Rev 会在日志标红并回退默认间隔。
# profiles.yaml 元数据示例 update_interval: 360 # 单位:分钟,与 cron 二选一视版本而定
配置变更后 Rust 层向 127.0.0.1:9097/configs 发送 PUT,mihomo 执行热加载。与完全重启 sidecar 相比,已建立 TCP 连接大多可保留;实测 YouTube 长连接在节点列表仅增删时未中断,但 proxy-groups 名称变更会导致组内选择失效需手动重选。
| 操作 | 平均耗时 | 活跃 TCP 中断率 |
|---|---|---|
| 304 无变更 | < 0.5s | 0% |
| 热重载(节点增减) | 1.2—2.8s | < 5% |
| 重启 sidecar | 4—8s | 约 40% |
测试样本:Windows 11,订阅 180 节点,同时进行 HTTPS 下载与 ICMP 探测。
yaml: unmarshal errors — 上游返回非 Clash 格式或 Base64 解码后缺 proxiesx509: certificate signed by unknown authority — 企业代理替换证书,需系统信任库导入context deadline exceeded — URL 超时,调大设置中的 fetch 超时或检查 DNScurl -s -H "Authorization: Bearer $SECRET" http://127.0.0.1:9097/configs -X PUT -d '{}'
304/热重载时序仅本站深度维护。merge 补丁实战 → 本站合并专题;merge 审批模板 → VR-B04。