文件名称:tasktiger:使用Redis的Python任务队列
文件大小:79KB
文件格式:ZIP
更新时间:2024-05-18 08:52:00
queue worker Python
TaskTiger TaskTiger是使用Redis的Python任务队列。 (有兴趣从事此类项目吗? 正在寻找加入我们的团队) 内容 发布新版本 特征 每任务分叉 TaskTiger为每个任务派生一个子流程,这有很多好处:由于在任务完成时终止了子流程,因此避免了由任务引起的内存泄漏。 可以为每个任务设置一个硬性时间限制,如果该任务尚未完成,则将其终止。 为了确保性能,可以在父进程中预加载任何必要的Python模块。 唯一队列 TaskTiger具有避免在任务队列中重复任务的选项。 在某些情况下,需要组合多个相似的任务。 例如,设想一个为对象编制索引的任务(例如,使它们可搜索)。 如果对象已存在于任务队列中并且尚未处理,则唯一队列将确保索引任务不必执行重复的工作。 但是,如果任务在排队时已经在运行,则该任务将再次执行以确保索引任务始终选择最新状态。 任务锁 TaskTige
【文件预览】:
tasktiger-master
----setup.py(1KB)
----.gitignore(60B)
----Dockerfile(160B)
----requirements.txt(44B)
----pyproject.toml(97B)
----MANIFEST.in(53B)
----LICENSE(1KB)
----CHANGELOG.md(4KB)
----setup.cfg(30B)
----docker-compose.yml(251B)
----requirements-test.txt(45B)
----tasktiger()
--------worker.py(43KB)
--------timeouts.py(2KB)
--------_internal.py(5KB)
--------tasktiger.py(22KB)
--------__init__.py(559B)
--------flask_script.py(1KB)
--------test_helpers.py(1KB)
--------rollbar.py(2KB)
--------stats.py(2KB)
--------task.py(19KB)
--------redis_semaphore.py(3KB)
--------logging.py(344B)
--------retry.py(770B)
--------schedule.py(1KB)
--------redis_scripts.py(20KB)
--------runner.py(3KB)
--------exceptions.py(2KB)
--------lua()
----scripts()
--------redis_scan.py(3KB)
----README.rst(27KB)
----tests()
--------test_periodic.py(11KB)
--------test_logging.py(2KB)
--------test_queue_size.py(3KB)
--------tasks.py(5KB)
--------__init__.py(1B)
--------utils.py(2KB)
--------test_context_manager.py(3KB)
--------config.py(491B)
--------test_workers.py(5KB)
--------test_semaphore.py(5KB)
--------test_base.py(44KB)
--------tasks_periodic.py(798B)
--------test_redis_scripts.py(13KB)
--------test_lazy_init.py(626B)
--------test_task.py(805B)
----.circleci()
--------config.yml(1KB)
----tox.ini(113B)