2012-09-11 32 views
1

我想解决一个想法,我有一个python应用程序。我会尽量展示基本组件。Python webapp的计划后台函数

  • 应该通过Web界面或移动应用程序,甚至Linux控制台如果可能的话可以访问。

  • 应用程序本身大多会对数据库&返回信息做CRUD操作。

  • 此外,最重要的是,它应该能够配置&启动/重新启动计划的后台任务。任务是执行某些I/O操作的函数(将文件从一个文件夹移动到另一个文件夹)。

我在找上如何处理这个&其构架/库是最适合这个任务。对于Web界面,我认为任何微框架(如cherrypy/flash/bottlepy)都可以用作REST风格或SOAP API。或者使用扭曲?

对于调度我有点卡住了。我看看芹菜& reddis队列,但他们都看起来太重量,我想要的。我也看了一下APScheduler?我可以将I/O任务作为apscheduler作业启动吗?还是应该查看其他内容?

谢谢!

回答

1

Python在标准库中不支持cron。但是有第三方库。 crontab看起来不错。

例子:

import crontab 
import time 

e = crontab.CronTab('*/5 * * * *') # every five minutes 
while True: 
    delay = e.next() 
    time.sleep(delay) 
    print("It's time (again)!") 

我不会让Web应用程序的cron事件部分的处理。构建一个独立的工具,循环执行后台任务。

+0

好的,谢谢,我想我应该停止过度设计,看看我去哪里! – Busata