SnailJob 1.7.0 发布
SnailJobOpenAPI 迎来大更新了,Python、Go 也支持 OpenAPI 了
2025-07-28 23:43:00
🔥🔥🔥 灵活,可靠和快速的分布式任务重试和分布式任务调度平台
✅️ 可重放,可管控、为提高分布式业务系统一致性的分布式任务重试平台
✅️ 支持秒级、可中断、可编排的高性能分布式任务调度平台
项目特性
-
易用性 业务接入成本小。避免依赖研发人员的技术水平,保障稳定性
-
灵活性 能够动态调整配置,启动 / 停止任务,以及终止运行中的任务
-
操作简单 分钟上手,支持 WEB 页面对任务数据 CRUD 操作。
-
数据大盘 实时管控系统任务数据
-
分布式重试任务 支持多样化退避策略、多样化重试类型、流量管控等
-
分布式调度任务 提供丰富的任务触发策略、任务分片、停止恢复、失败重试等
-
工作流任务编排 仿钉钉设计的流程编排引擎,支持复杂的功能编排、失败重试、告警等
-
任务数据管理 可以做到数据不丢失、数据一键回放
-
容器化部署 服务端支持 docker 容器部署
-
高性能调度平台 支持服务端节点动态扩容和缩容
-
支持多样化的告警方式 邮箱、企业微信、钉钉、飞书、自定义告警
-
支持多种流行数据库 mysql、mariadb、sqlserver、oracle、postgres 数据库
开源组件对比
项目 | Quartz | Elastic-Job | XXL-JOB | PowerJob | Snail Job |
---|---|---|---|---|---|
跨语言能力 | 不支持 | 不支持 | 不支持 | 不支持 | 支持 java (1.8/17)、Python、Go 客户端 、Solon 客户端 |
定时调度 | Cron | Cron | Cron | CRON、固定频率、固定延迟、OpenAPI | 1. 定时任务 2. 秒级任务 (无需依赖外部中间件) 3. 固定频率 4.OpenAPI |
重试任务 | 不支持 | 不支持 | 不支持 | 不支持 | 1. 支持本地 & 远程重试模式 2. 支持各种常用组件的重试 比如 dubbo/feign 3. 支持多种退避策略 4. 丰富的重试风暴管控手段 ...... |
任务编排 | 不支持 | 不支持 | 不支持 | 支持 | 仿钉钉工作流设计,颜值高、体验好 |
分布式计算 | 不支持 | 静态分片 | 广播 | 支持 | 1. 广播执行 2. 集群执行 3. 静态分片 4. 动态分片 |
多语言 | Java | 1. Java 2. 脚本任务 | 1. Java 2. 脚本任务 | 支持 | 1. Java 2. CMD (本地脚本、远程脚本、参数传人) 3. PowerShell (本地脚本、远程脚本、参数传人) 3. Shell (本地脚本、远程脚本、参数传人) 4. HTTP 任务 |
用户管理 | 不支持 | 支持 | 支持 | 不支持 | 完备的用户管理和权限管理 |
安全 Token | 不支持 | 不支持 | 支持 | 不支持 | 支持 |
可视化 | 无 | 弱 | 1. 历史记录 2. 运行日志(不支持存储)3. 监控大盘 | 支持 | 1. 历史记录 2. 实时日志 (支持持久化、可视化) 3. 监控大盘 (实时调度数据展示) 4. 失败调度排名 5. 在线集群查看等 |
可运维 | 无 | 启用、禁用任务 | 1. 启用、禁用任务 2. 手动运行任务 3. 停止任务 | 支持 | 1. 启用、禁用任务 2. 手动运行任务 3. 停止任务 4、手动重试 |
报警监控 | 无 | 邮件 | 邮件 | 邮件 | 支持配置多种告警场景,通知方式支持: 1. 邮件 2. 钉钉 3. 企微 4. 飞书 5、Webhook |
性能 | 每次调度通过 DB 抢锁,对 DB 压力大 | ZooKeeper 是性能瓶颈 | 采用 Master 节点调度,Master 节点压力大 | 无锁化设计 | 系统采用多 bucket 模式,借助负载均衡算法,确保每个节点能够均衡处理任务,同时支持无限水平扩展,轻松应对海量任务调度 |
接入成本 | 只依赖 DB 接入成本低 | 需引入 Zookeeper 增加系统复杂性和维护成本 | 只依赖 DB 接入成本低 | 依赖 DB 接入成本低 | 只依赖 DB 接入成本低 |
更新日志
新增(Feature)
- 支持非中国上海时区:去掉固定时区偏移+8,修改为获取当前系统时区
- 新增IP优先级选择器等价于SpringCloud的InetUtils
✨ 优化(Optimizations)
OpenAPI 重构与增强
- 服务端 OpenAPI 改造:全面采用 HTTP 调用,计划在 v1.8.0 下线现有 gRPC 调用方式。
- 客户端兼容:保持历史版本兼容,新增配置 snail-job.openapiV2=true 以启用新版本。
- 模块合并:snail-job-common-server-api 与 snail-job-common-client-api 合并为 snail-job-common-model(对用户无感)。
- 类迁移提示:com.aizuda.snailjob.client.model.ExecuteResult 迁移至 com.aizuda.snailjob.client.job.core.dto.ExecuteResult(当前版本未删除,请尽快迁移)。
- 服务端模块调整
- snail-job-server 改为 snail-job-server-dispatcher
- 新增snail-job-server-interface 具体结构参考 项目结构
其他
- 删除 服务端 Netty RPC 逻辑,清理 Maven 依赖。
🔧 修复问题(Fixes)
- 修复 重试调度幂等性问题。
- 修复 REQUIRES_NEW 模式下未清除挂起缓存数据。
- 修复 QLExpress 安全漏洞
- 修复 SnailRetryEndPoint无法被SnailEndPointScanner处理
- 修复 OpenAPI 执行时原始上下文与临时上下文未合并的问题。
- 修复 修复工作流任务节点阻塞场景且执行失败,工作流状态未改为失败问题
- 修复 优化pakko actor 未回收问题【能升尽量升, 不能升的自己修改一下】
📢注意 本次版本重点完成 OpenAPI 的重构,以更好地满足 Python 和 Go 客户端的集成需求。同时,针对包结构进行了合理化调整,此变更对二次开发用户可能产生影响,请注意适配。
项目地址
方便的话给项目一个 star,你的支持是我们前进的动力!
先睹为快

低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
- 上一篇
轻松给 Claude Code 接入火山引擎 API
前提条件 在开始之前,请确保您已经安装好Claude CLI。接下来我们将部署Claude Code Proxy代理服务,该服务支持多种接入方式,让您能够灵活切换不同的AI模型提供商。 步骤一:下载并安装Claude Code Proxy 首先访问Releases · AIDotNet/ClaudeCodeProxy页面,下载最新版本的win-64压缩包。下载完成后解压文件,您将看到以下目录结构: 步骤二:启动代理服务 使用管理员权限运行run-directly.bat脚本。此脚本主要用于测试和快速启动服务。 注意:使用管理员权限是为了将服务注册为Windows服务,这样可以实现常驻运行,无需每次手动启动。 启动成功后,您将看到以下日志输出,此时可以通过浏览器访问http://localhost:6500: 步骤三:登录管理界面 在浏览器中打开http://localhost:6500,您将看到登录界面。使用默认账号密码登录: 用户名:admin 密码:admin123 登录成功后,您将进入系统首页: 步骤四:配置火山引擎API账户 在首页中点击"账户管理",然后点击右上角的"添加账户...
- 下一篇
DjangoAdmin 敏捷开发框架 Flask+Layui 版本 v2.6.0 发布
v2.6.0 更新内容: 1、新增全局参数配置; 2、新增到出 Excel 功能; 3、新增导入 Excel 功能; 4、新增上传导入功能组件; 5、新增导出下载功能组件; 6、新增上传文件功能; 7、新增读取 env 配置文件扩展; 8、优化角色权限节点参数设置; 9、优化非超管用户权限设置问题; 10、修复近期用户反馈的问题; 项目介绍 一款 Python 语言基于 Flask、Layui、MySQL 等框架精心打造的一款模块化、高性能、企业级的敏捷开发框架,本着简化开发、提升开发效率的初衷触发,框架自研了一套个性化的组件,实现了可插拔的组件式开发方式:单图上传、多图上传、下拉选择、开关按钮、单选按钮、多选按钮、图片裁剪等等一系列个性化、轻量级的组件,是一款真正意义上实现组件化开发的敏捷开发框架。 软件信息 软件名称:DjangoAdmin 敏捷开发框架 Flask+Layui 版本 官网网址:https://www.djangoadmin.cn 文档网址:http://docs.flask.layui.djangoadmin.cn 演示地址:http://manage.flask...
相关文章
文章评论
共有0条评论来说两句吧...
文章二维码
点击排行
推荐阅读
最新文章
- SpringBoot2初体验,简单认识spring boot2并且搭建基础工程
- CentOS6,CentOS7官方镜像安装Oracle11G
- CentOS7设置SWAP分区,小内存服务器的救世主
- CentOS6,7,8上安装Nginx,支持https2.0的开启
- CentOS关闭SELinux安全模块
- Docker安装Oracle12C,快速搭建Oracle学习环境
- Docker快速安装Oracle11G,搭建oracle11g学习环境
- CentOS7编译安装Gcc9.2.0,解决mysql等软件编译问题
- Docker使用Oracle官方镜像安装(12C,18C,19C)
- CentOS8安装MyCat,轻松搞定数据库的读写分离、垂直分库、水平分库