Skip to main content
 首页 » 编程设计

python之每 2 分钟调用一个函数的守护进程,具有启动和停止功能

2025年05月04日14itcoder

我正在开发一个 Django 网络应用程序。

需要每 2 分钟调用一次函数“xyx”(它更新一个变量)。

我希望一个 http 请求应该启动守护进程并继续调用 xyz(每 2 分钟),直到我发送另一个 http 请求来停止它。

欣赏你的想法。

谢谢 维沙拉纳

请您参考如下方法:

有多种方法可以实现这一点。假设有正确的服务器资源,我会编写一个 python 脚本,它调用 django 目录“外部”的函数 xyz(尽管导入了必要的东西),只有在 /var/run/django- stuff/my-daemon.run 存在。让 cron 每两分钟运行一次。

然后,对于您的 django 函数,如果上面提到的文件不存在,您的启动函数会创建它,而停止函数会销毁它。

正如我所说,还有其他方法可以实现这一目标。你可能有一个 python 脚本在循环中等待大约 2 分钟......等等。在任何一种情况下,你都会遇到这样一个事实,即两个 python 脚本在两个不同的 cpython 调用上运行(不知道 mod_wsgi) 无法相互通信,因此 python 脚本之间的 IPC 并不简单,因此您需要使用某种正式的 IPC(如信号量、文件等),而不仅仅是公共(public)变量(不会不工作)。