merlin Asked: 2020-05-19 20:43:32 +0800 CST2020-05-19 20:43:32 +0800 CST 2020-05-19 20:43:32 +0800 CST 如何通过 cron 有效地规划 100 个工作? 772 我正在安排通过scrapy和cron部署的蜘蛛。每个蜘蛛一行。现在有 100 只蜘蛛,这变得非常难以计划和管理。管理大量工作的推荐方法是什么?查看暂停/恢复作业所需的潜在维护时间,以及重叠作业等。 cron 2 个回答 Voted Best Answer Bob 2020-05-19T21:10:00+08:002020-05-19T21:10:00+08:00 不要使用 cron 如果您的需求很复杂,您可能会考虑使用更高级的产品,该产品旨在运行复杂的计划(分布在多个服务器上)并支持触发器、作业依赖、错误处理、重试和重试监控等。行业术语将是“企业”作业调度和/或“工作负载自动化”。 Koubas 2020-05-20T03:52:47+08:002020-05-20T03:52:47+08:00 如果您需要安排任务何时运行,而不是多久运行一次,您可以继续使用 cron。为了避免任务的交叉执行,您可以让 cron 只执行一个简短的脚本,将任务添加到某种队列(redis、rabbitmq、sql 数据库),然后让另一个脚本使用该队列并按顺序或以有限的并发执行工作负载。这当然会带来另一类问题,例如如何处理阻止其他工作负载运行的卡住工作负载 :)
不要使用 cron
如果您的需求很复杂,您可能会考虑使用更高级的产品,该产品旨在运行复杂的计划(分布在多个服务器上)并支持触发器、作业依赖、错误处理、重试和重试监控等。行业术语将是“企业”作业调度和/或“工作负载自动化”。
如果您需要安排任务何时运行,而不是多久运行一次,您可以继续使用 cron。为了避免任务的交叉执行,您可以让 cron 只执行一个简短的脚本,将任务添加到某种队列(redis、rabbitmq、sql 数据库),然后让另一个脚本使用该队列并按顺序或以有限的并发执行工作负载。这当然会带来另一类问题,例如如何处理阻止其他工作负载运行的卡住工作负载 :)