gaffer-rs微批处理调度工具

联合创作 · 2023-09-29 14:32

gaffer 是 Rust 编写的微批处理调度工具,可优先级并行作业调度程序,具有并发排除、作业合并、重复作业和较低优先级的负载限制等功能。

特点

  • 循环执行:作业将在某个时间间隔重新加入队列

  • 作业队列:使用可克隆的 [JobRunner] 从各个不同的线程发送作业

  • Future Jobs:(可选)创建 Futures 以从作业中获取结果

  • 作业优先级:为作业提供优先级,所有作业将按该优先级顺序执行

  • 作业合并:合并队列中相同 / 相似的作业以减少工作量

  • 并行执行:在多个线程上运行作业并锁定应该独占运行的作业,它们留在队列中,不占用其他资源

  • 并发排除:基于键的锁定以避免不应并发运行的作业

  • 优先级节流:为了让空闲线程准备好接收更高优先级的作业,通过将它们限制为较少数量的线程来限制较低优先级的作业

浏览 4
点赞
评论
收藏
分享

手机扫一扫分享

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

手机扫一扫分享

编辑 分享
举报