跳转到主要内容

在没有专用JobRunner的情况下运行作业

项目描述

Alpha License: AGPL-3 OCA/queue Translate me on Weblate Try me on Runboat

此模块实现了使用 ir.cron 触发器的简单 queue.job 运行程序。

它适用于常规作业运行程序无法运行的环境,例如在Odoo.sh上。

与常规作业运行程序不同,作业被分配到HttpWorkers,作业由作业运行程序Cron运行在CronWorker线程上。这是由于以下设计决策:

  • 当没有网络活动时,Odoo.sh会将HttpWorkers置于休眠状态

  • HttpWorkers旨在处理流量。用户不应该为后台任务付费。

目前,它只实现了 queue_job 运行程序的最基本功能,特别是没有通道容量也没有优先级。请查看路线图以获取更多详细信息。

目录

配置

对于最简单的情况,除了安装模块之外,不需要任何配置。

为了避免CronWorker CPU超时导致cron作业处理中断,建议使用--limit-time-real-cron=0启动Odoo,完全禁用CronWorker超时。

可以通过利用多个ir.cron记录来实现作业的并行执行。

  • 确保有足够的CronWorker可用(Odoo CLI --max-cron-threads

  • 根据需要复制queue_job_cron cron记录,直到拥有与cron worker数量相同的记录。

已知问题/路线图

  • 支持通道容量和优先级。(见_acquire_one_job

  • 优雅地处理CronWorker CPU超时。(见_job_runner

  • 在作业状态更新为开始后提交事务。(见_process

错误跟踪器

错误在GitHub Issues上跟踪。如有问题,请检查是否已报告该问题。如果是您首先发现的,请通过提供详细且受欢迎的反馈帮助我们解决这个问题。

请不要直接联系贡献者寻求支持或帮助解决技术问题。

致谢

作者

  • Camptocamp SA

贡献者

维护者

此模块由OCA维护。

Odoo Community Association

OCA,即Odoo社区协会,是一个非营利组织,其使命是支持Odoo功能的协作开发并促进其广泛使用。

当前维护者

ivantodorovich

此模块是GitHub上的OCA/queue项目的一部分。

欢迎您贡献力量。有关如何贡献的信息,请访问https://odoo-community.org/page/Contribute

项目详情


下载文件

下载您平台的文件。如果您不确定选择哪个,请了解更多关于安装包的信息。

源代码分发

此版本没有可用的源代码分发文件。有关如何生成分发存档的教程,请参阅生成分发存档

构建分发

支持

AWS AWS 云计算和安全赞助商 Datadog Datadog 监控 Fastly Fastly CDN Google Google 下载分析 Microsoft Microsoft PSF 赞助商 Pingdom Pingdom 监控 Sentry Sentry 错误记录 StatusPage StatusPage 状态页面