是否有动态调度系统可以更好地实现基于订阅的支付系统?

问题描述 投票:0回答:1

我在Django的python中从头开始制作订阅支付系统。我将celery-beat用于RabbitMQ作为队列代理的计划任务。 django_celery_beat使用D atabaseScheduler,这会引起问题。

  1. 花很长时间将简单任务分发给代理。我正在使用它来使用户过期。对于某些到期任务,大约需要60秒-150秒。但是通常以前需要100毫秒到500毫秒。

  2. 另一个问题是,当我重新计划某些任务时,当它被写入数据库时​​,它出于某种奇怪的原因而阻塞了调度程序因此而错过了多个任务。

我一直在研究Apache Airflow,因为它是作为行业标准的调度解决方案销售的。

但是我不认为,这对于我的小项目是适用且可行的。

如果您曾经使用过订阅付款系统并在其中使用过,您可以建议我如何进行此操作吗?

python django scheduling subscription celerybeat
1个回答
0
投票

我有一个长期的解决方案,为类似的项目实施。

  1. 首先,我将日程表作为模型保存在数据库中
  2. 下一个我有一个cron作业,该作业将获取当天需要运行的条目
  3. 然后根据调度模型中设置的时间设置ETA,将这些作业调度为正常的Celery作业。

这样,在我的情况下,Celery只是利用了Redis的消息。如果没有直接答案,请尝试。

© www.soinside.com 2019 - 2024. All rights reserved.