手动更新订阅的一天

没有自动刷新的订阅管理,日常是这样的:早上发现某个节点连不上,打开机场官网看公告——「节点已更换,请更新订阅」;回客户端点更新订阅;如果你用的是聚合方案还得重新跑一遍转换;最后手工把新节点塞回各个代理组。

单一订阅时这活儿还能忍,多来源聚合后,任何一次来源变更都意味着一轮手工同步。这就是为什么「自动刷新」是订阅管理工具的刚需功能,而不是锦上添花。

SubBoost 的自动刷新做的事:定时拉取所有订阅来源的最新内容,通过智能节点匹配把变化合并进你的节点池——来源更新了,你在管理层的加工成果不丢。

智能节点匹配:刷新不掉层的关键

自动刷新听起来简单(定时 GET 一下订阅 URL 就完了),真正的技术含量在匹配这一步。

朴素方案的灾难

朴素刷新是「全量替换」:拉到新列表,把旧节点全删掉换新的。听起来干净,实际是灾难:

  • 你花半小时做的批量重命名,一次刷新回到解放前
  • 基于节点建立的组织关系全部断链——节点从代理组里消失,链式代理的前置绑定失效
  • 节点在客户端里的收藏、选中状态全部作废

智能匹配怎么解决

SubBoost 的智能节点匹配在刷新时做「新旧节点对齐」:

  • 同一个节点,只是服务器地址/端口变了 → 识别为同一节点,原地更新参数,名字、分组、链式绑定全部保留
  • 全新节点 → 作为新成员加入池子,等待你归组
  • 消失的节点 → 标记移除,相关代理组自动收缩

效果是:机场「换 IP 不换节点」的常规操作(这恰恰是最高频的变更类型)对你完全透明,管理层的所有投入持续保值。

定时任务的安全配置

自动刷新依赖定时触发,SubBoost 用 CRON_SECRET 环境变量保护刷新触发端点——只有携带正确凭证的调度请求才会被执行(见部署教程的环境变量清单)。

这个设计解决一个真实风险:订阅刷新端点如果没有防护,任何人都能高频触发你服务器的出站请求(去拉机场订阅),等于给你的服务器开了个免费流量放大器。自托管时确认三件事:

  1. CRON_SECRET 用长随机串,不要用示例值
  2. 刷新端点不暴露在公网无保护状态下(有反代的,限制路径访问)
  3. 刷新频率合理即可,机场订阅一天变更有限,没必要分钟级轮询

一个完整的多来源同步案例

把自动刷新放进真实场景看效果。假设你的池子有三个来源:

来源1:机场A(主力,月付)——节点每周小调
来源2:机场B(备用)——一个月没大变化
来源3:自建 VPS 两台——自己控制,几乎不变

自动刷新运转后的典型一周:

  • 周一:机场A 更新了 3 个香港节点的端口 → 智能匹配识别为同名节点参数变更,你的命名和分组原样保留,客户端无感
  • 周三:机场A 下线 2 个没人用的美国节点 → 池子里标记移除,「美国」代理组自动从 5 个变 3 个
  • 周五:机场A 新增日本 IEPL 线路 → 新节点入池,你花一分钟把它拖进「流媒体」组——这是整周唯一需要动手的事

对比手工方案(每周主动检查三家的公告、更新订阅、重新整理分组),自动刷新把维护成本压到接近零。

自动刷新常见问题 FAQ

Q:刷新频率设多少合适?

按官方默认值起步即可。机场订阅的变更频率有限,线路调整多在几天到几周的尺度,分钟级轮询没有收益,只会增加无效请求。对时效有特殊要求再适度调高。

Q:SubBoost 刷新后,客户端要手动更新吗?

不需要手动操作,但要理解两层机制:SubBoost 刷新的是来源层数据,客户端拉的是聚合订阅,内容随 SubBoost 内部状态更新。客户端侧再配一个自动更新间隔(比如每 24 小时拉一次),两边自动衔接。

Q:智能匹配遇到「彻底换掉」的节点怎么办?

识别不出来的情况也会被正确处理:节点整体换掉(地址、端口、特征全变)会被视为全新节点入池等你归组,旧节点标记移除。最坏情况是花一分钟把新节点拖进对应组,而不是全池重建。

Q:刷新一直失败怎么排查?

三个检查点按顺序过:来源订阅链接是否还有效(去机场后台确认链接没被重置);CRON_SECRET 凭证是否和触发请求一致(改过环境变量后调度方要同步更新);服务器出站网络是否正常(拉取订阅是出站请求,被防火墙拦了也会静默失败)。

Q:CRON_SECRET 没配置会怎样?

刷新触发端点失去防护,任何知道地址的人都能高频触发你服务器的出站请求,等于被人当免费流量放大器用。自托管场景这是必配项,部署时就应该设置长随机串。

Q:能手动触发一次刷新吗?

可以。改完订阅来源、或排查完问题想立即验证时,手动触发一次最实用——不用等定时周期,马上能确认来源状态。日常交给定时任务兜底即可。

与客户端订阅的关系

值得澄清一个层级:SubBoost 的自动刷新是来源层的同步(机场 → SubBoost)。而客户端拉的聚合订阅 URL,内容会随着 SubBoost 内部状态实时反映——多数客户端还会再配一层自动更新间隔(比如每 24 小时拉一次聚合订阅)。

两层自动化的正确组合:SubBoost 刷新管「数据保鲜」,客户端定时更新管「配置下发」。都不用你操心,体系里的所有机器始终跑在最新配置上。

至此,SubBoost 的核心使用环节都讲完了:聚合节点管理分流链式DNS → 自动刷新。工具选型的横向对比见订阅转换工具对比篇