gpt4 book ai didi

另一种 Python 进程技术的 Python 看门狗?

转载 作者:太空宇宙 更新时间:2023-11-03 19:17:26 30 4
gpt4 key购买 nike

我有一个无限期运行的实时数据采集器,每隔几秒通过 HTTP 采集数据并将其放入 MySQL 数据库中。

在我的程序中,我有一个 while True 循环,每当最后生成的时间大于 X 秒时,它就会生成工作程序(下载数据并保存数据的函数):

while True:
if _last_updated - datetime.now() > timedelta(seconds=5):
green_pool.spawn_n(worker) # yes I'm using Eventlet!
_last_updated = datetime.now()

确保该模块始终正常工作、永不卡住且永不停机的最佳方法是什么?我应该检查绿池的大小吗?我正在考虑用 Python 为其编写一个看门狗,你会建议这样做吗?如果是这样,我应该注意什么?

最佳

最佳答案

这可能有点过头了,但我会考虑使用 supervisord 。它是一个控制其他进程的进程(有点像init.d)。它将允许您启动/停止/重新启动包含 while True: 循环的控制脚本。如果控制脚本停止工作,它还会自动重新启动。

正如您所提到的,您应该在控制脚本中密切关注池大小以及工作进程生成的成功/失败。但为了确保控制脚本始终运行,supervisord 就符合要求。

关于另一种 Python 进程技术的 Python 看门狗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10922754/

30 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com