我正在开发一个使用永久对象 MyService 的 Web 应用程序。使用 Web 界面,我动态更新其状态并监控其行为。现在我想定期调用它的一种方法。我正在考虑使用 celery PeriodicTask 但遇到了一些范围问题。看来我需要执行三个不同的过程:
python manage.py runserver
python manage.py celery worker
python manage.py celerybeat
问题是,即使我确保 MyService 是一个可以被多个线程安全使用的单例,celery 也会创建自己的对象的新副本。有没有办法可以在 django 服务器和 celery 主进程之间共享这个对象?我试图找到一种从 django 脚本中启动 celery 的方法,但直到现在都没有成功。将不胜感激任何帮助。