flaresolverr 令我的服务器悲伤
- 内容介绍
- 文章标签
- 相关推荐
本文用于记录一点 flaresolverr 与 worker 搭配使用中遇到的问题。
起因是目前在用的机场订阅因为最近的风波改成了阅后即焚,订阅成功会自动重置订阅链接。但是这几天本来节点就容易失灵,手机平板和电脑使用的梯子也都有自动更新的功能。并且关掉自动更新转而手动一个一个复制粘贴太令人恼火,所以计划用自己的域名替代订阅链接,然后用 worker 去拿订阅源。
逻辑是:更新请求发送到 worker, worker 带 cookie 访问目标网站获取订阅源, 将订阅中的配置文件返回。
但是遇到了 cf 盾,worker 失败。
经过 gemini3 pro 推荐选择使用 flaresolverr 部署在自己服务器上过盾。
废弃方案 1:把 fs 部署在服务器上,worker 通过 IP 访问
Q:报错 1003
A:worker 不能直接访问 IP 地址,需要使用域名
废弃方案 2:给服务器的 fs 套个域名访问
Q:报错 500
A:检查 docker 日志,fs 内存不足爆掉了。这种固定目标的情况可以使用 session 指定访问同一对话,避免并发请求多开标签页挤爆内存。
废弃方案 3:用 session 指定会话
Q:请求后马上报错
A:session 对应的标签页死后 fs 不会自动重启,需要用 sessions.destroy 方法杀掉对话再重新调用。
废弃方案 4:添加杀对话重试逻辑
Q:一直在报错
A:服务器就这么点内存,访问 google 可以,访问机场刚好内存不足。
事后本地用 orbstack 运行了 fs 的 docker,通过 postman 本地调用成功返回机场带订阅的链接页面。证实了确实是服务器内存不足导致的。
回忆起当时选择用 worker 也是因为服务器内存太小,尽量把服务都写在了可白嫖的地方。所以总结下来就是:
大内存解决一切!
另:近期有无合适的海外小鸡推荐一下
网友解答:--【壹】--:
很有道理,我去试试看,我的小鸡是 1.5G 的,但是上面也跑了一堆别的东西
--【贰】--:
没懂,为啥不能服务器访问订阅并推送到Worker?
--【叁】--:
worker 以前用来转发没有 cf 盾的机场,所以有现成的代码和其他的机场。重新写代码搬到服务器上太麻烦,而且现在 fs 在服务器上内存不够过盾,真搬到服务器上也依然无法完成任务。
--【肆】--:
你的思路就是低频定时拉取,然后缓存到worker上是吧?
我的建议是:
1.把服务迁移到github action上
2.或者弃用flaresolverr,低频拉取我记得用 cloudscraper也是很好用的
3.或者用更大内存的服务器
ps.你的服务器内存是有多小,我一个1h1G的甲骨文amd小鸡都能跑fs
image601×436 26.1 KB
而且还是每分钟定时跑一次的高频任务,内存都没爆(cpu有点勉强但是够用)。我建议你可以swap和zram用一下,能压缩不少的内存占用。
推荐用berohost的服务器,量大管饱,性价比很高
本文用于记录一点 flaresolverr 与 worker 搭配使用中遇到的问题。
起因是目前在用的机场订阅因为最近的风波改成了阅后即焚,订阅成功会自动重置订阅链接。但是这几天本来节点就容易失灵,手机平板和电脑使用的梯子也都有自动更新的功能。并且关掉自动更新转而手动一个一个复制粘贴太令人恼火,所以计划用自己的域名替代订阅链接,然后用 worker 去拿订阅源。
逻辑是:更新请求发送到 worker, worker 带 cookie 访问目标网站获取订阅源, 将订阅中的配置文件返回。
但是遇到了 cf 盾,worker 失败。
经过 gemini3 pro 推荐选择使用 flaresolverr 部署在自己服务器上过盾。
废弃方案 1:把 fs 部署在服务器上,worker 通过 IP 访问
Q:报错 1003
A:worker 不能直接访问 IP 地址,需要使用域名
废弃方案 2:给服务器的 fs 套个域名访问
Q:报错 500
A:检查 docker 日志,fs 内存不足爆掉了。这种固定目标的情况可以使用 session 指定访问同一对话,避免并发请求多开标签页挤爆内存。
废弃方案 3:用 session 指定会话
Q:请求后马上报错
A:session 对应的标签页死后 fs 不会自动重启,需要用 sessions.destroy 方法杀掉对话再重新调用。
废弃方案 4:添加杀对话重试逻辑
Q:一直在报错
A:服务器就这么点内存,访问 google 可以,访问机场刚好内存不足。
事后本地用 orbstack 运行了 fs 的 docker,通过 postman 本地调用成功返回机场带订阅的链接页面。证实了确实是服务器内存不足导致的。
回忆起当时选择用 worker 也是因为服务器内存太小,尽量把服务都写在了可白嫖的地方。所以总结下来就是:
大内存解决一切!
另:近期有无合适的海外小鸡推荐一下
网友解答:--【壹】--:
很有道理,我去试试看,我的小鸡是 1.5G 的,但是上面也跑了一堆别的东西
--【贰】--:
没懂,为啥不能服务器访问订阅并推送到Worker?
--【叁】--:
worker 以前用来转发没有 cf 盾的机场,所以有现成的代码和其他的机场。重新写代码搬到服务器上太麻烦,而且现在 fs 在服务器上内存不够过盾,真搬到服务器上也依然无法完成任务。
--【肆】--:
你的思路就是低频定时拉取,然后缓存到worker上是吧?
我的建议是:
1.把服务迁移到github action上
2.或者弃用flaresolverr,低频拉取我记得用 cloudscraper也是很好用的
3.或者用更大内存的服务器
ps.你的服务器内存是有多小,我一个1h1G的甲骨文amd小鸡都能跑fs
image601×436 26.1 KB
而且还是每分钟定时跑一次的高频任务,内存都没爆(cpu有点勉强但是够用)。我建议你可以swap和zram用一下,能压缩不少的内存占用。
推荐用berohost的服务器,量大管饱,性价比很高

