jhuckaby/Cronicle · 文件 下载 ZIP
文件最后提交记录最后更新时间
README.md
以下内容由 AI 翻译,如有问题请点此提交 issue 反馈
xyOps™

宣布推出 xyOps™,Cronicle 的精神续作! 1.0 版本现已上线:
- 精美的营销网站:https://xyops.io/
- GitHub 仓库:https://github.com/pixlcore/xyops
请告诉我你的看法!
Cronicle 在未来仍将继续得到支持和维护(主要修补错误和安全问题)。
概述
Cronicle 是一个多服务器任务调度器和运行器,配有基于 Web 的前端 UI。 它处理计划任务、重复任务和按需任务,可针对任意数量的工作服务器,并提供实时统计数据和实时日志查看器。 它基本上是一个用 Node.js 编写的华丽 Cron 替代品。 你可以给它简单的 shell 命令,或者几乎用任何语言编写插件。

功能概览
- 单服务器或多服务器部署。
- 自动故障转移到备用服务器。
- 自动发现附近的服务器。
- 实时任务状态,附带实时日志查看器。
- 插件可以使用任何语言编写。
- 在多个时区中调度事件。
- 可选地排队处理长时间运行的事件。
- 跟踪每个任务的 CPU 和内存使用情况。
- 带有性能图表的历史统计信息。
- 用于插件的简单 JSON 消息系统。
- 用于外部通知系统的 Web 钩子。
- 用于调度和运行事件的简单 REST API。
- 用于远程应用身份验证的 API 密钥。
文档
Cronicle 的文档分布在以下文件中:
术语表
对 Cronicle 中常用术语的简要介绍:
| 术语 | 描述 |
|---|---|
| Primary Server | 负责计时并运行调度器的主服务器,将任务分配给其他服务器和/或自身。 |
| Backup Server | 一种工作服务器,如果当前主服务器失效,它将自动成为主服务器并接管职责。 |
| Worker Server | 一种处于空闲状态的服务器,直到被主服务器分配任务。 |
| Server Group | 一组具有名称的服务器,可被事件指定为目标,并标记为“primary eligible”或“worker only”。 |
| API Key | 一种特殊密钥,外部应用可使用它向 Cronicle 发送 API 请求。 远程触发任务等。 |
| User | 一个人类用户账户,具有用户名和密码。 密码使用 bcrypt 进行加盐和哈希处理。 |
| Plugin | 任何语言编写的可执行脚本,用于运行任务并通过读写 JSON 与 Cronicle 通信。 |
| Schedule | 事件列表,这些事件被安排在特定时间、在特定服务器上运行。 |
| Category | 事件可被分配到类别中,类别定义默认值,并可选地在 UI 中提供颜色高亮。 |
| Event | 调度表中的一个条目,可能以任意间隔运行一次或多次。 每个事件指向一个 Plugin,以及一个用于运行它的服务器或组。 |
| Job | 事件的一个运行实例。 如果事件设置为每小时运行,则每小时都会创建一个新的任务。 |
Colophon
我们站在巨人的肩膀上。Cronicle 使用了以下出色的 Node 模块构建:
| 模块名称 | 描述 | 许可证 |
|---|---|---|
| async | 用于异步代码的高阶函数和常见模式。 | MIT |
| bcryptjs | 零依赖的优化版 JavaScript bcrypt。 | BSD 3-Clause |
| chart.js | 使用 canvas 元素创建简单的 HTML5 图表。 | MIT |
| daemon | 用于创建 *nix 守护进程的插件。 | MIT |
| errno | 暴露 Node.js libuv 的 errno 详细信息。 | MIT |
| font-awesome | 标志性的字体和 CSS 框架。 | OFL-1.1 and MIT |
| form-data | 用于创建可读的 "multipart/form-data" 流的库。可用于向其他 Web 应用程序提交表单和文件上传。 | MIT |
| formidable | 用于解析表单数据(尤其是文件上传)的 Node.js 模块。 | MIT |
| jstimezonedetect | 自动检测客户端或服务器时区。 | MIT |
| jquery | 用于 DOM 操作的 JavaScript 库。 | MIT |
| mdi | Material Design Webfont。包含 Stock 和 Community 图标在一个单一的 webfont 集合中。 | OFL-1.1 and MIT |
| mkdirp | 递归创建目录,类似于 mkdir -p。 | MIT |
| moment | 解析、验证、操作和显示日期。 | MIT |
| moment-timezone | 解析并显示任意时区的时刻。 | MIT |
| netmask | 解析并理解 IPv4 CIDR 块,以便进行探索和比较。 | MIT |
| node-static | 用于 node 的简单、合规的文件流式传输模块。 | MIT |
| nodemailer | 轻松从您的 Node.js 应用程序发送邮件。 | MIT |
| shell-quote | 引用和解析 shell 命令。 | MIT |
| socket.io | Node.js 实时框架服务器 (Websockets)。 | MIT |
| socket.io-client | 用于服务器到服务器 socket.io 连接的客户端库。 | MIT |
| uglify-js | JavaScript 解析器、混淆/压缩和美化工具包。 | BSD-2-Clause |
| zxcvbn | 来自 Dropbox 的实时密码强度估算。 | MIT |
使用 Cronicle 的公司
已知以下公司在使用 Cronicle:
许可证
MIT 许可证 (MIT)
版权所有 (c) 2015 - 2025 Joseph Huckaby
特此授予任何获得本软件及相关文档文件(“软件”)副本的人免费许可,以无限制地处理软件,包括但不限于使用、复制、修改、合并、发布、分发、再许可和/或销售软件副本的权利,并允许向其提供软件的人这样做,但须遵守以下条件:
上述版权声明和本许可声明应包含在软件的所有副本或重要部分中。
本软件按“原样”提供,不提供任何形式的明示或暗示保证,包括但不限于对适销性、特定用途适用性和非侵权的保证。在任何情况下,作者或版权持有人均不对因软件或软件的使用或其他交易而产生的任何索赔、损害或其他责任负责,无论是合同诉讼、侵权或其他,均与软件或软件的使用或其他交易有关。