分布式 worker 任务队列 MRQ

码农软件 · 软件分类 · 作业/任务调度 · 2019-09-04 12:43:36

软件介绍

MRQ(MR.Queue)是一个使用 Redis&gevent 的分布式 worker 任务队列。

MRQ 是一个独特的任务队列,它一方面旨在像 RQ 一样简单,另一方面要求有接近 Celery 的性能。MRQ最早在 Pricing Assistant 上被开发,它最初的功能设计是为了满足任务队列的各种任务需求(IO密集&CPU密集,很多小任务&几个大任务)。

特性

  • 代码简单:MRQ 和 RQ 一样容易理解并且更容易扩展。

  • 强大的用户面板:具有可视界面,可以控制一切,包括队列中的任务、当前任务、worker 的状态等等。

  • 按任务区分的日志:在面板中单独获得每个任务的输出日志。

  • Gevent worker:IO 密集型任务可以并行在同一个 Unix 进程中执行,以实现最大吞吐量。

  • 管理集成:CPU 密集型的任务可以通过单个命令行参数在多个 UNIX 进程之间拆分。

  • 任务管理:可以利用代码或者用户面板重试、重新入队和取消任务等。

  • 性能:批量作业排队,轻松作业分析。

  • 容易配置:MRQ 的每个参数都可以通过命令行参数或者配置文件进行配置。

  • 任务路由:和 Celery 一样,任务可以有默认的队列、过期时间和 ttl 值。

  • 内置的调度器:可以按照时间间隔和时间点对任务进行调度。

  • 策略:支持串行或者并行的处理队列,同时也支持一次性或者周期性的批量任务。

  • 子队列:简单的命令行来生成多个子队列,从 worker 的角度使用自动发现的方式。

  • 完备的测试体系:边界情况比如 worker 中断、Redis 失败等都在一个 docker 容器中测试。

  • 线程跟踪:可以调试查看每个 CPU 敏感的任务在每个线程消耗的时间。

  • 完备的内存泄露调试器:监视任务的内存泄露并且使用 objgraph 发现内存泄露。


本文地址:https://codercto.com/soft/d/13855.html

编译器设计

编译器设计

Keith Cooper、Linda Torczon / 郭旭 / 人民邮电出版社 / 2012-12 / 99.00元

深入剖析现代编译器运用的算法和技术 强调代码优化和代码生成 体现编译原理教学的最新理念 本书旨在介绍编译器构造法中的艺术和科学。书中深入分析现代编译器后端所用的算法和技术,重点讨论代码优化和代码生成,详细介绍了用几个编程语言编写的示例等。 Keith D. Cooper 莱斯大学计算机科学系计算工程专业Doerr特聘教授,曾任该系系主任。Cooper博士的研究课题涵盖过程间......一起来看看 《编译器设计》 这本书的介绍吧!

JSON 在线解析
JSON 在线解析

在线 JSON 格式化工具

RGB转16进制工具
RGB转16进制工具

RGB HEX 互转工具

随机密码生成器
随机密码生成器

多种字符组合密码