V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
推荐学习书目
Learn Python the Hard Way
Python Sites
PyPI - Python Package Index
http://diveintopython.org/toc/index.html
Pocoo
值得关注的项目
PyPy
Celery
Jinja2
Read the Docs
gevent
pyenv
virtualenv
Stackless Python
Beautiful Soup
结巴中文分词
Green Unicorn
Sentry
Shovel
Pyflakes
pytest
Python 编程
pep8 Checker
Styles
PEP 8
Google Python Style Guide
Code Style from The Hitchhiker's Guide
slogon
V2EX  ›  Python

python 的定时任务需求该怎么处理好呢?

  •  
  •   slogon · 2014-04-01 19:42:00 +08:00 · 13540 次点击
    这是一个创建于 3916 天前的主题,其中的信息可能已经有所发展或是发生改变。
    刚接触python不久,想实现这样一个需求,用django搭建一个小站,然后后台有个定时任务不断的在跑,跑出的结果推送到前端页面。(类似于前端页面右下角会弹出一个层,显示后端定时任务跑完的最新结果)不知道有没有现成模块可以调用?希望大家能给点意见,万分感激!
    19 条回复    1970-01-01 08:00:00 +08:00
    slogon
        1
    slogon  
    OP
       2014-04-01 19:59:16 +08:00
    django的站点已经搭建好了,现在就是后台定时任务这块不知道怎么实现好。。。
    wibile
        2
    wibile  
       2014-04-01 20:09:00 +08:00
    celery!
    webjin
        3
    webjin  
       2014-04-01 20:19:20 +08:00
    crontab -e
    slogon
        4
    slogon  
    OP
       2014-04-01 20:21:21 +08:00
    @webjin 单独跑某个脚本用crontab是用过,要推送到前端不好处理吧?
    ritksm
        5
    ritksm  
       2014-04-01 20:22:30 +08:00
    slogon
        6
    slogon  
    OP
       2014-04-01 20:22:31 +08:00
    @wibile 多谢了,我先去了解一下
    pythonfan
        7
    pythonfan  
       2014-04-01 21:16:08 +08:00
    @ritksm 多谢啦
    frye
        8
    frye  
       2014-04-01 21:28:09 +08:00
    tron
    est
        9
    est  
       2014-04-01 21:41:06 +08:00   ❤️ 1
    uwsgi 自带cron
    Livid
        10
    Livid  
    MOD
       2014-04-01 21:43:57 +08:00   ❤️ 2
    很多时候不想用 crontab 是因为担心无法放进代码目录么?

    可以用一个 cron.pp 的 puppet 文件来控制 /etc/cron.d 里的内容。
    kaneg
        11
    kaneg  
       2014-04-02 00:44:51 +08:00
    @ritksm 这个不错
    yueyoum
        12
    yueyoum  
       2014-04-02 00:52:56 +08:00 via Android
    怎么显示最新内容的?定时刷 还是 实时的?

    定时刷 还是用 crontab 的好,把结果放入 redis ,然后django再取出来就行

    实时的就上 socket io
    konakona
        13
    konakona  
       2014-04-02 03:14:44 +08:00
    一般是配合crontab 使用,扔一片几年前写的python+crontab

    其实原理非常简单,在unix下运行python都是执行命令:
    $ python filename.py

    而crontab 就是计划任务,使用它,只需要用文中提到的设定去进行时间触发即可。


    文:
    http://blog.crazyphper.com/?p=2703
    http://blog.crazyphper.com/?p=2701
    yinian1992
        14
    yinian1992  
       2014-04-02 08:31:03 +08:00 via Android
    celery beat!
    Crossin
        15
    Crossin  
       2014-04-02 10:36:25 +08:00
    比较关心如何“推送”到前端?
    rayind
        16
    rayind  
       2014-04-02 11:15:32 +08:00
    如果是想让django定时执行某些动作
    可以使用crontab执行custom management command
    http://stackoverflow.com/questions/573618/django-set-up-a-scheduled-job
    moyerock
        17
    moyerock  
       2014-04-02 14:38:33 +08:00
    celery 看起来不错哟
    zeayes
        18
    zeayes  
       2014-04-02 21:42:58 +08:00
    @Crossin 前端定时来后端拿数据
    fy
        19
    fy  
       2014-04-08 14:49:39 +08:00
    我也想问这个,不过我的需求是按时间戳做定时任务。好像celery干这个比较麻烦??
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2578 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 29ms · UTC 11:36 · PVG 19:36 · LAX 03:36 · JFK 06:36
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.