zoukankan      html  css  js  c++  java
  • django中运行定时任务脚本

    需要使用到django_apscheduler模块,因此先安装:

    pip install django-apscheduler 
    

    然后在工程的settings.py文件中的INSTALLED_APPS模块加入:

    INSTALLED_APPS = [
        'django.contrib.admin',
        'django.contrib.auth',
        'django.contrib.contenttypes',
        'django.contrib.sessions',
        'django.contrib.messages',
        'django.contrib.staticfiles',
        'django_apscheduler',
        ......
    ]
    

    然后在app的views.py文件中实现调用的函数:

    from apscheduler.schedulers.background import BackgroundScheduler  
    from django_apscheduler.jobstores import DjangoJobStore, register_events, register_job
    
    import logging
    
    logging.basicConfig()
    
    def task_test():
        print "***************************"
    
    def RunDaemonService():
        scheduler = BackgroundScheduler()
        scheduler.add_jobstore(DjangoJobStore(), "default")
        try:
            # 监控任务
            scheduler.add_job(task_test, 'interval', seconds=5, id='test_job')
    
            # 调度器开始
            scheduler.start()
        except Exception as e:
            print e
            # 报错则调度器停止执行
            scheduler.shutdown()
    

    然后还需要在工程的urls.py文件中引入该app:

    from testapp.views import RunDaemonService
    

    最后运行整个项目:

    python manage.py runserver
    

    这样在启动服务时这个定时任务就会运行,可以为我们的工程提供后台运行服务支撑.

    ps:
    如果想让django不以8000为http端口,可以在runserver时直接后面跟上端口号.

  • 相关阅读:
    利用ssh传输文件
    linux 终端常用快捷键
    ubuntu 下关闭apache服务自动启动
    linux ps命令介绍
    virtualenv 使用
    startuml 2.6注册
    三代组装小基因组研究综述
    畅想未来的测序
    测序简史
    纳米孔测序技术介绍
  • 原文地址:https://www.cnblogs.com/xl2432/p/10848219.html
Copyright © 2011-2022 走看看