Saturn-vipshop

分布式作业调度服务平台
授权协议 Apache-2.0
开发语言 Java
所属分类 程序开发、 作业/任务调度
软件类型 开源软件
地区 国产
投 递 者 鲍驰
操作系统 跨平台
开源组织
适用人群 未知
 软件概览

Saturn 是一个用于提供分布式、容错和高可用性作业调度服务的平台。

特性:

  • 基于时间和语言不受限制的工作
  • 轻松实现工作和基于 Web 的管理
  • 并行子任务(分片)调度
  • 支持 1 秒级别的调度
  • 基于智能负载的作业分配
  • 故障检测和故障转移支持
  • 统计数据可视化
  • 全方位监控,轻松排除故障
  • 多活集群部署支持
  • 容器友好
  • 经受每天十亿次调度的考验
  • saturn的文档比较少,记录下基于3.3.1 版本在eclipse搭建过程 Node.js 不要用最新版本,我使用的是v8.7.0 不要使用内置H2 数据库,H2对应的sql 文件有错误 saturn-docker 下的sql文件版本也不对,只能作为演示使用 使用saturn-console\src\main\resources\db\mysql 来搭建mysql才是正解 zookeeper可以

  • Saturn本地运行方案 1.软件准备 JDK >= 1.7 ZooKeeper >= 3.4.6 Mysql没有版本要求 Node4.0以上   2.数据准备 执行数据库脚本,创建环境所需都表结构,具体不再罗列出来。 3.运行程序步骤 1.下载远程saturn项目 git clone https://github.com/vipshop/Saturn.git 2.使用cmd控制台,cd到satu

  • 最近在看vipshop的Saturn,为更好跟踪分享Saturn saturn,简单修改启动代码,将classpath 中所有path自动设置为saturnLibDir. 只需要修改一个函数 :com.vip.saturn.job.executor.Main的setExecutorClassLoader,修改后代码如下 private void setExecutorClassLoader(Cla

  • Quartz 官网:http://www.quartz-scheduler.org/ Quartz是一个有着丰富特性的开源作业调度库,它几乎可以集成到任何Java应用中,无论是独立的小应用,还是大型的电子商务应用。Quartz可用于创建简单和复杂的、成百上千乃至成千上万的作业;任务可以以标准的Java组件定义作业,你可以通过编程来执行几乎任何事情。Quartz调度器包含很多企业级特性,例如支持JT

  • 以java job为例,单个job的执行都是从public abstract class AbstractElasticJob 的execute函数开始,execute的触发是在public class SaturnWorker implements Runnable类的run中。 execute函数主要负责 各种前置条件(包括结束console re-shard 结果)通过后调用真实执行函数ex

  • Saturn Saturn is a platform created by VIP.com(唯品会) to provide a distributed, fault tolerant and high available job scheduling service. Why Saturn? Time based and language unrestricted job Easy job im

  • 由于每个job 在executor上都会启动好几个进程,无论job是否enable,是否在executor有shard,因此要注意任务分组,长期不用的job要删除 如果有多个zookeeper集群,可以分配到不同console上以提升分片效率及隔离 Saturn 从代码上支持了k8s及mesos,但没有文档说明 对长时间job,可以考虑超时强杀,但此类job一定要设置好资源释放:beforeTim

 相关资料
  • 关于处理程序,我读过,它们不存在很长时间的延迟,并将在系统重新启动后终止。所以他们不适合我的任务。 但是AlarmManager似乎是解决这个问题的一个很好的候选者,因为在允许的情况下,它们甚至在系统重启后仍然存在,并且可以重新运行应用程序。但是在Android文档中,警报管理器是用于必须在特定时间运行的任务(比如闹钟)。但我的任务每分钟都要执行。 然后是后台服务。这是更多的任务,如在后台下载,因

  • 问题内容: 您将使用哪种分布式锁定服务? 要求是: 可以从不同的进程/机器看到的互斥(锁定) 锁定…释放语义 超时后自动释放锁-如果锁持有人死亡,它将在X秒后自动释放 Java实现 很高兴拥有:.Net实现 如果免费:死锁检测/缓解 易于部署,请参阅下面的注释。 我对诸如“可以通过数据库完成”或“可以通过JavaSpaces完成”之类的答案不感兴趣-我知道。我对现成的,现成的,经过验证的实现感兴趣

  • 链接 Web API Controllers 动态WebApi层 集成OData 集成Swagger UI ASPNET Core 集成OData

  • 我有两个微服务和调用来更新数据,然后插入另一个数据,但让我们考虑一下 失败,然后我们需要回滚由 更新的数据,否则我们将处于不一致的状态。 我也经历了佐贺patterns.will它满足了这种矛盾 谁能为此提出更好的解决方案?

  • 最近在学微服务的分布式事务,不太明白为什么在微服务这种分布式系统中,原有的单体acid会出现问题 希望大佬们可以讲一下原理和思想

  • 5.3 ABP分布式服务 - 集成OData 5.3.1 简介 开放数据协议(Open Data Protocol,缩写OData)是一种描述如何创建和访问Restful服务。你可以在Abp中使用OData,只需要通过Nuget来安装Abp.Web.Api.OData. 5.3.2 安装 1. 使用Nuget安装 首先应该使用Nuget安装Abp.Web.Api.OData到我们的WebApi项目