一个基于Cloudflare Workers部署的自动化保活监控系统

本人借助AI开发的第一个项目,一个基于Cloudflare Workers部署的自动化保活监控系统,不喜勿喷。

项目地址: anlish01/Auto-Keepalive: 一个Cloudflare Workers 自动化保活监控系统

:globe_with_meridians: Cloudflare Workers 自动化保活监控系统 (Auto-Keepalive Pro)

基于 Cloudflare Workers 和 KV 存储构建的轻量级、无服务器 (Serverless) 站点保活与状态监控面板。无需额外部署服务器,利用 Cloudflare 免费额度即可实现分钟级的多站点监控与多渠道告警。


:open_book: 项目由来与设计初衷

在玩转各类免费 Serverless 应用、自动化签到脚本或监控节点时,经常会遇到由于长时间没有外部流量访问,导致容器被运营商强制挂起或进入深度休眠的问题。本项目的诞生正是为了完美解决这一痛点。

  1. 源起与核心价值:高效利用好 CF 5 个免费 Cron 额度
    本项目的最初构想是为了帮我个人的 69云签到、Koyeb 免费节点 以及 NodeWarden 后台 进行定时访问保活。有人可能会疑惑:“69云签到和 NodeWarden 项目本身不是已经自带了定时访问/保活功能吗?”
    本项目的真正价值恰恰就在这里——Cloudflare 免费账户仅有 5 个 Cron(定时触发器)额度。 如果你部署的每个项目都去单独配置并占用一个 Cron 触发器,宝贵的额度瞬间就会耗尽。而通过本项目,你可以将所有需要定期访问保活的网址统统归拢在一起,仅占用 1 个 Cloudflare Cron 额度,即可完成全自动的多渠道状态轮询和保活,大大节省了宝贵且极其有限的 Cron 资源。

  2. 致敬前作:增加管理前台与底层体验重构
    本项目的 Idea 借鉴了 wxvxx/Auto-keep-online 项目。但该项目属于“无前台面板”的设计,用户每次需要增删保活监控网址时,都必须登录 Cloudflare 控制台深入到 Worker 的底层代码或项目后台进行手工干预,体验非常不便。此外,其通知机制也仅支持 Telegram 这一种方式。
    为此,本项目全面增加了现代化的可视化管理前台(Web UI),并且对后端引擎、存储及多渠道加签逻辑进行了彻底的重构,让保活网址管理和多平台推送可以一站式无缝配置。

  3. 对比 Uptime Kuma:零门槛、零服务器成本与免穿透
    有人会问:为什么不用更强大的 louislam/uptime-kuma 呢?不可否认,Uptime Kuma 是目前极为优秀的监控工具,但它要求用户必须拥有 Docker 环境或 VPS 服务器。然而,有相当大的一部分受众手里可能并没有 VPS,或者由于服务器处在内网/NAT 环境下,如何公开访问管理面板还需要折腾 Cloudflare Tunnel、FRP 内网穿透等复杂操作。
    相比之下,本项目只需要你拥有一个免费的 Cloudflare 账号,就能实现纯网页环境部署,零基础、不需要懂任何 CLI 命令行,几分钟即可轻松上线且运行极为稳定。当然,如果你已经有了部署完善的 Uptime Kuma 运行环境,完全可以略过本项目。


:sparkles: 核心特性

  • :high_voltage: 纯 Serverless 架构:依托 Cloudflare Workers 运行,数据存储于 Cloudflare KV,极速、稳定且完全免费。
  • :artist_palette: 现代化可视化面板:内置响应式 Web UI,支持深色/浅色主题自由切换,所有增删改查通过页面即可闭环。
  • :locked: 基础安全认证:面板采用 Basic Auth 账号密码保护,保障配置数据安全。
  • :link: 灵活的任务管理:
    • 支持添加无限量保活任务(受限于 CF 免费额度限制)。
    • 独立配置每个任务的探测频率(分钟级)。
    • 支持在线编辑修改:支持随时对已有的保活任务进行修改,无需删除重建。
  • :loudspeaker: 强大的多渠道通知路由:
    • 内置 9 大主流推送平台:Telegram, PushPlus, NotifyX (码达), 钉钉, 飞书, Resend (邮件), Gotify, Ntfy, 以及自定义 Webhook。
    • 深度适配 NotifyX (码达):已直接在后端内置官方 https://www.notifyx.cn/api/v1/send/:key 接口协议,前端仅需填入 API 密钥 (Key) 即可无缝启用。
    • 高级加签机制:完美支持钉钉、飞书的 HMAC-SHA256 安全签名校验。
    • 细粒度分配:支持为每个保活网址配置独立的通知渠道(如:重要节点推送到飞书,签到任务推送到 TG)。
    • 通道一键测试:新增【测试发送】按钮,在保存前可一键检查通知渠道的 Token、URL 或自定义请求头是否配置正确。
    • 规范化通知模板:消息通知严格包含【任务名称】、【监控网址】、【发生时间】及【异常详情】等字段。
    • 智能降噪:任务访问失败时每次提醒,恢复正常后仅进行首次恢复提醒。

界面预览

:rocket: 部署教程请移步项目

20 个赞

谢佬分享:rose:消灭零回复 :xhj26:

1 个赞

谢分享

1 个赞

感谢分享

1 个赞

谢谢分享

1 个赞

很不错,感谢大佬的分享。

1 个赞

很好

1 个赞

我来看看

1 个赞

感谢分享:hugs:

感谢分享 :blush:

cloudflare限制了只能并发50…

没看明白这个是什么限制

感谢分享,nodewarden也要保活吗?

说的很好,支持支持

nodewarden为了提升后台相应速度,你部署的时候就已经自动添加了cron,你可以打开你cf部署的nodewarden项目设置里看一下有没有,默认应该是*/5 * * * *

Gemini解释,之所以需要配置 Cron (定时任务 / Cron Triggers),主要是为了解决无服务器(Serverless)架构下的后台数据清理和维护问题。

大佬牛逼

使用的项目,必须支持

1 个赞

不少好的项目都需要用到cron,比如ieax/renewhelper, maillab/cloud-mail, qaz741wsd856/warden-worker, shuaiplus/nodewarden,wangwangit/SubsTracker等等(这几个项目的cron必须保留),所以5个cron很容易拙荆见肘。

多过50个并发,多出来的无效