Juice分布式任务调度云系统

联合创作 · 2023-09-29 15:01

Juice 是沪江( hujiang )学习系统项目组( LMS )所开发的一套基于 Mesos Framework 的分布式任务调度云系统,基于此系统,可以实现任何作业型任务的调度工作。

耗时计算型任务处理在沪江一直是个持续的需求,例如多媒体转码、Map Reduce、密集计算等等任务。在 Juice 出现以前,各个项目组各显神通,开发着不同的任务处理系统,不但耗费人力,还特别耗费服务器。  Juice 利用 Mesos 集群空闲的计算能力,负责统一的接口返回和任务查询功能,其优点如下:

  • 基于 Mesos 集群,最大程度利用空闲资源完成耗时计算

  • 异步调度,并提供结果查询和回调两种方法获取执行结果

  • 分布式管理,所有耗时任务都在资源池中无状态调度。

  • 任务查询,目前只开放通过接口查询任务的状态和结果。

How To Use Juice

创建任务步骤:

  • 开发能够使用 Docker 启动的任务(主业务逻辑)并 PUSH 到 Docker 镜像仓库。

  • 调用 Juice API 发起任务

  • 等待回调结果,或主动 fetch 结果

Juice最适合运行Docker任务,通常做法将Jar包打入一个Docker镜像,提交此镜像到dockerhub上,提交一个Container模式的任务到到Juice,其中参数dockerImage为Docker镜像名。
Juice会自动的寻找一个合适的Agent来执行此任务,调用方不必关心在哪个Host上执行,而只需要关心任务是否执行成功即可。
浏览 6
点赞
评论
收藏
分享

手机扫一扫分享

编辑 分享
举报
评论
图片
表情
推荐
点赞
评论
收藏
分享

手机扫一扫分享

编辑 分享
举报