手头的任务:
有一个 MySQL 表,其中用户活动被推送为一行。该活动需要稍后处理。
id | activity_type | activity_data | creation_time | status
23 EMAIL {....... } 2013-02-01 UNPROCESSED
没有芹菜的加工:
- 使用一个脚本来处理 N 条记录,处理它们,然后将已处理记录的状态更新为 PROCESSED。
如何使用 Celery 实现相同的功能,我想使用相同的功能来标记任务而不是使用代理?即任务添加 -> 将 10 个最旧的行添加到状态为 UNPROCESSED 的 mysql 表中,该表也包含与任务相关的数据。
在任务完成时-> 将行标记为已处理。
如何告诉 celery 不是将任务推送到代理上,而是必须从 MySQL 表中检索任务?
我是 Celery 的初学者,因此不了解它的所有功能。不建议使用 MySQL 作为代理,但我想知道可行性。