我需要编写一个python守护进程来运行python脚本,并通过TCP将它们的输出发送到服务器。每个脚本应该每N秒运行一次(例如,第一个脚本每10秒运行一次,第二个脚本每3秒运行一次,第三个脚本每200秒运行一次,等等)。 运行时,守护进程将查找包含脚本路径及其时间延迟的配置文件(我应该这样调用超过秒的时间吗?)。然后这个守护进程在适当的时候调用脚本。你知道吗
我要问的问题是,如何才能使这个简单的定时器引擎?有现成的解决办法吗?你知道吗
另外,我有一个主意。这个想法是这样的:
每一秒都要这样做:
now_time = int(datetime.datetime.now().timestamp())
for x in time_delays:
diff = start_time - now_time
if diff % x == 0:
# Good! Let's run script file
你的简单问题掩盖了最终会变得更复杂的事情。
您将需要一个配置函数、一个计时器函数、线程和pubsub(或一些其他机制)来通信脚本是否已完成,最后需要套接字或ftp来与服务器通信,还必须保留一个列表,或在配置文件中针对每个脚本单独注明。
我假设有多个服务器,多个脚本可以同时运行,脚本可能需要很长或很短的时间才能完成。
如何获得脚本工作的结果也会影响您选择与每个服务器通信的方法,您可能需要根据脚本结果的性质使用不同的方法。你知道吗
只需使用调度程序,请参见此处的api https://apscheduler.readthedocs.org/en/latest/#下面是一个快速示例:
相关问题 更多 >
编程相关推荐