斗篷自建

用 Cloudflare Workers 自建斗篷:能做什么 + 做不到什么

ROAS365 团队 2026-06-24 10 分钟

技术团队第一反应是『斗篷不就是边缘上做个 if-else 吗,Cloudflare Workers 一晚上能写完』。这种想法在 demo 阶段成立,生产环境跑 3 个月后大概率全军覆没。本文讲清 Workers 自建斗篷的真实能力边界。

快速结论
  • Workers 适合做基础分流:IP / UA 黑名单、地理位置过滤、简单 A/B。这部分 200 行代码搞定。
  • Workers 难以处理的:住宅代理识别(需要 TLS fingerprint 库)、设备指纹(需要 200+ 维度持续训练)、规则周更新(需要专门团队)。
  • Workers 自建斗篷在投放头 1-2 个月还能跑,3-6 个月后必然失效 —— 平台爬虫升级 + 你的规则没跟上。
  • 决策边界:月预算 < $50K 可以试自建练手,> $100K 永远买 ROAS365 类服务,中间看团队工程深度。

Workers 自建斗篷的核心架构

用 Cloudflare Workers 自建斗篷的最简版本,代码量不到 200 行,做以下事:

接收用户请求,提取 IP、UA、headers、cookies 等基础信息。

查 IP 黑名单库(Googlebot 公开段、Meta AS、AWS / GCP 数据中心段)、UA 黑名单(facebookexternalhit、Facebot、Googlebot 字符串)。

如果命中黑名单 = 审核员 → 返回安全页 HTML;否则 = 真用户 → 返回真页 HTML。

整体逻辑就是边缘上一个 if-else。Worker 部署到全球 200+ 节点,延迟 < 50ms,看起来很完美。

Workers 能做到的具体能力

第一,基础 IP 黑名单匹配。维护一个 IP CIDR 段列表(可以从公开数据源拉),Worker 用 CIDR matcher 实时判断。性能完全够,亿级请求每天无压力。

第二,UA 字符串匹配。简单正则匹配 Bot UA 关键词(googlebot / facebookexternalhit / adsbot 等)。99% 的"标准爬虫"能识别。

第三,Geo / ASN 过滤。Workers 提供 cf.country、cf.asn 等字段,直接拿到访客地理位置和 ASN。可以做"非美国访客返回安全页"这种粗粒度策略。

第四,简单 A/B 分流。Cloudflare KV / Durable Objects 存配置,Worker 按访客指纹 hash 把流量分到 A / B 版本。Workers 这部分功能很成熟。

第五,Edge cache 控制。给真页和安全页设不同 cache 策略,优化加载性能 + 防 cache poisoning。

这些能力组合起来,初期(1-2 个月)能扛住大部分平台爬虫。

Workers 难以做到的部分(自建会卡住的地方)

第一,住宅代理识别。Meta 和 Google 现在大量使用住宅代理爬虫(BrightData / Oxylabs)。这些 IP 来自普通家庭网络,跟真用户 IP 没区别。Workers 无法靠 IP 屏蔽,必须叠加 TLS fingerprint(JA3 hash)。但 TLS fingerprint 库需要专门维护:已知审核工具的 JA3 hash + 真用户浏览器的 JA3 hash 白名单。自建一年也搞不出像样的库。

第二,Canvas / WebGL 设备指纹。需要客户端 JS 执行,把指纹数据 POST 回 Worker。Worker 接收后还要跟"已知审核员设备指纹库"比对。这个库需要持续收集已封案例反向工程,自建团队没有数据源。

第三,真人审核员的行为模式识别。需要收集大量真用户和审核员的行为数据(鼠标轨迹、滚动节奏、停留时长),训练 ML 分类器。这是 ML 工程师的活,不是 Workers 工程师。

第四,规则库的周更新。平台爬虫每周升级,你必须每周更新规则库。这意味着专门的工程师持续监控 + 反向工程 + 库维护。一两个兼职做不了。

第五,安全页面的动态生成 + Wayback 友好。安全页面不能静态化,必须有内容更新机制 + 历史快照可信度。这是内容 + 前端工程的活,跟 Worker 本身关系不大。

自建斗篷的真实工作量

看一个 ROAS365 同等水准的斗篷系统,从零搭建需要的工作量:

:3-4 个全职工程师(1 SRE + 1-2 ML/安全 + 1 前端)。

时间:6-12 个月达到 ROAS365 当前精度的 60%。

金钱:工程师工资 + 基础设施 + 数据源订阅(IP 库、JA3 库),保守每月 $50K+。

持续投入:平台爬虫每周升级,系统需要持续迭代。一年后规模继续扩,人员还要加。

机会成本:做斗篷的工程师不能做业务,业务进度被拖慢。

什么时候自建有意义

不是所有团队都不该自建。三种情况自建合理:

第一,月预算 > $1M。投放规模够大,工程团队成本被摊薄,自建的精度优化对 ROI 提升显著。

第二,业务有极致定制需求。比如某种很特殊的行业(高度技术性产品 / 极端地域),通用斗篷工具无法覆盖。

第三,作为学习项目。技术团队想吃透斗篷原理,自建一遍是最佳学习方式。但这种情况通常不用于生产投放。

其他情况,买服务永远比自建经济

买服务 vs 自建的成本对比

做个具体的数字对比:

自建团队成本(行业平均):

ROAS365 同等服务订阅(行业中位数定价):

差异 2-25 倍。除非月预算极大,买服务永远便宜。

真实案例:某 dropship 团队的自建失败

2025 年某 dropship 团队(月广告费 $200K)决定自建斗篷,理由是"工具贵 + 工程师便宜"。结果:

第 1-2 个月:自建斗篷跑得很好,审核员命中率 5%,账户存活正常。

第 3 个月:Meta 升级了住宅代理爬虫。自建团队 2 周后才发现命中率涨到 20%。开始打补丁。

第 4 个月:补丁打了 5 版本,命中率降到 10%,但账户开始批量进风控。3 个 BM 被封。

第 5 个月:工程团队精疲力尽,管理层决定切换到 ROAS365。3 周后账户稳定。

总损失:5 个月工程成本(~$200K) + 3 个 BM 封号(沉没像素数据 + 损失广告投放 $50K) + 业务停摆机会成本。

这个案例不是个例,看过太多类似的。

一句话总结

Cloudflare Workers 是自建斗篷的好工具,但只能做到基础部分。真正决定账户存活的是住宅代理识别 + 设备指纹库 + 规则周更新 —— 这三个自建几乎不可能。月预算 > $50K 的团队,买 ROAS365 永远比自建经济。免费试用入口在 CTA。

常见问题

用 Cloudflare Workers 完全免费能做斗篷吗?

Workers 免费 tier 每天 100k 请求,够小流量测试。但生产环境(月广告费 $20K+)的流量很快超出免费 tier。付费版本 $5/月起,流量 $0.5/百万请求。这部分成本不是阻力,真正阻力是规则库维护的人力成本。

Workers 上能不能跑 ML 模型识别审核员?

Workers 不适合跑大模型(内存限制 128MB),但可以跑小型决策树或 XGBoost 推理。问题是训练数据从哪来?需要大量已标注的真实流量样本(审核员 + 真用户分类),没有专门数据来源你训不出好模型。ROAS365 用自有客户网络的几亿次访问数据训练,这是单一团队无法复制的数据优势。

Workers 自建斗篷的安全页面怎么处理?

三种方案:(1) 静态 HTML 直接嵌入 Worker 代码(简单但容易被识别静态化);(2) 安全页面存 Cloudflare KV,Worker 动态返回(可以做内容轮换);(3) 安全页面独立 Pages 项目,Worker 通过 fetch() 内部代理(最灵活但延迟+10ms)。生产建议方案 2 + 自动内容轮换 cron。

Workers 跟 ROAS365 在边缘节点性能上有差异吗?

ROAS365 本身就部署在 Cloudflare Workers 上,所以边缘节点延迟相同(~35-50ms)。差异在识别引擎复杂度 —— ROAS365 在 Workers 内运行 200+ 维度识别 + 多层指纹比对 + 实时打分,通过精心优化把识别延迟控制在 30ms 内。自建的简单 if-else 比 ROAS365 快 10-20ms,但识别精度差 30%+。

如果我已经自建了斗篷,迁移到 ROAS365 复杂吗?

不复杂。ROAS365 提供迁移服务:(1) 接管你的 Worker 路由(改 DNS 或者 Worker route 即可);(2) 你的安全页面可以直接复用;(3) 历史规则可以导入 ROAS365 后台叠加。整个迁移通常 1-2 天完成,无业务中断。我们见过的最快迁移是周五下午开始周一早上完成。

既要个性化,又不想担封号风险?

所有访客访问同一个落地页 URL —— 同页 A/B 测试、按画像分发内容、识别无效流量。不做内容隐藏,不做障眼跳转。