【问题标题】:Is there any way to keep tasks running on server side in django?有没有办法让任务在 django 的服务器端运行?
【发布时间】:2022-01-25 05:45:39
【问题描述】:

基本上,我的 django webapp 中有一个机器人,当给定您的社交媒体凭据时,它会管理您的一个社交媒体帐户关闭了网站。有什么方法可以存储凭据,然后即使在用户离开网站后也能保持机器人运行,这样机器人仍然可以管理帐户?该机器人主要发出少量请求和 API 调用。 谢谢你

【问题讨论】:

  • 看看celery。它是为此目的而设计的库,与 Django 完全兼容。

标签: python django server web-development-server


【解决方案1】:

很多选择。

  • Celery。用于组织任务队列的库。生产就绪,得到广泛支持,拥有一个很棒的社区。​​li>
  • Dramatiq 可能与 periodicDramatiq 也是一个用于组织任务队列的库,periodic 是一个任务调度器。不那么流行,更轻量级,而且相当稳定。至于我,进入门槛低于celery
  • Supervisor。 Supervisor 是一个客户端/服务器系统,它允许其用户监视和控制类 UNIX 操作系统上的许多进程。一个命令安装,非常容易配置,非常适合小项目(后台例程10+的时候比较难用)。
  • Tmux。它是一个终端多路复用器,可以在断开连接后保持进程运行。当您一次运行某项或进行测试时可能会很有用。
  • Django Background Task。它是 Django 的数据库支持的工作队列,松散地基于 Ruby 的 DelayedJob 库。未维护且与高于 2.2 的 Django 版本不兼容。

【讨论】:

    猜你喜欢
    • 2012-06-19
    • 1970-01-01
    • 2023-03-21
    • 2021-03-02
    • 1970-01-01
    • 2021-08-22
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多