有一些工作需要服务器不间断运行(运行时检测redis某队列数据状况并处理,运行一次可能会耗一段时间,运行完毕后过1秒再次运行重新检测),请问python云引擎如何实现这种类似“守护进程”的功能?谢谢!

云引擎没有提供这样的功能,你可以创建一个进程来运行这个循环(两次检测之间 sleep 一下)

请问您指的是多线程吗?我没学过多线程相关的知识,麻烦请看一下是不是下面这样就可以?谢谢

import time
import _thread

engine = Engine()
_thread.start_new_thread( infiniteWork, ("Thread-1", 2, ) )

# 守护线程,持续处理Redis相关数据维护工作
def infiniteWork( threadName, delay):
   while True:
       # do some redis works
       time.sleep(delay)

多进程或者多线程都可以

不好意思,可否麻烦再稍微解释下怎么样是多进程?再创建一个新的云引擎实例专门处理这些任务,但和主程序用同一个存储服务和同一个redis吗?

另外加入需求不是每几秒调用一次,而是改成长时间比如每小时、每半天,那么是不是用Leancloud提供的定时服务调用比较好?

我不太了解 Python,我的意思就是你可以用 fork 之类的 API 在同一个云引擎实例里创建多个进程,可以创建一个进程来运行这个循环。

另外加入需求不是每几秒调用一次,而是改成长时间比如每小时、每半天,那么是不是用Leancloud提供的定时服务调用比较好?

确实也可以考虑用定时器,几分钟的话用定时器都可以。