1. 程式人生 > >定時任務框架Djcelery 即django+celery框架搭建以及Redis服務及啟動,報錯解決

定時任務框架Djcelery 即django+celery框架搭建以及Redis服務及啟動,報錯解決

           pip install pyramid_celery

           pip install django-celery

           Django中設定

           INSTALLED_APPS = ['djcelery',]

python manage.py migrate

       pip install celery-with-redis

       pip install django_celery_beat

  1. Redis服務啟動

  一、

  import djcelery
djcelery.setup_loader()   # 載入djcelery
# 資料庫排程
CELERYBEAT_SCHEDULER = 'djcelery.schedulers.DatabaseScheduler'
BROKER_URL = 'redis://127.0.0.1:6379/0'
BROKER_TRANSPORT = 'redis'

二、

Apitest目錄下新建celery.py 檔案

from __future__ import absolute_import
import os, django
from celery import Celery
from django.conf import settings

os.environ.setdefault('DJANGO_SETTINGS_MODULE', 'autotest.settings')
django.setup()

app = Celery('autotest')
app.config_from_object('django.conf:settings')
app.autodiscover_tasks(lambda: settings.INSTALLED_APPS)

三、

Apitest目錄下新建task.py檔案

# -*- coding: utf-8 -*-
import requests, time, sys, re
import urllib, zlib#,
import pymysql
import unittest
from trace import CoverageResults
import json
from idlelib.rpc import response_queue
from apitest.celery import app
from time import sleep
@app.task
def hello_world():
    print('已執行')

四、

  1. 啟動服務 python manage.py runserver
  2. 切換到Redis資料夾下  cmd 啟動指令   redis-server redis.windows.conf
  3. 啟動指令 python manage.py celery worker -l info
  4. 啟動指令 python manage.py celery beat

啟動指令 python manage.py celery worker -l info報錯

TypeError: can only concatenate tuple (not "NoneType") to tuple

解決辦法:

D:\Python36\Lib\site-packages\djcelery\management\commands\celery.py

檔案的14--16行程式碼註釋掉

這裡寫圖片描述

class Command(CeleryCommand):
    """The celery command."""
help = 'celery commands, see celery help'
#    options = (CeleryCommand.options +
#               base.get_options() +
#               base.preload_options)

class Command(CeleryCommand):
    """The celery command."""
help = 'celery commands, see celery help'
#    options = (CeleryCommand.options +
#               base.get_options() +
#               base.preload_options)

          pip install pyramid_celery

相關推薦

定時任務框架Djcelery django+celery框架搭建以及Redis服務啟動解決

           pip install pyramid_celery            pip install django-celery            Django中設定            INSTALLED_APPS = ['d

<問題解決09>使用2017.2版的IDEA的struts2框架啟動tomcat--解決方案如下:

logs exce catalina blog .cn 錯誤 tomcat8 idea tomcat報錯 問題描述:     使用2017.2版的IDEA自動生成的struts2框架的核心包為:          使用這兩個包結合tomcat-8啟動時報如下錯誤:     

Django中使用Celery實現定時任務(用djcelery)

三方庫 span 托管 沒有 日報 目錄結構 elf beat worker [TOC] 一.引言 Django是python語言下的一個比較熱門的Web框架,越來越多的企業和開發者使用Django實現自己的Web服務器。在Web服務器開發過程中,有時候我們不僅僅是要實現W

【python 定時任務排程】 用APScheduler排程框架完成python指令碼排程

# -*- coding: utf-8 -*- def main_job1(): print('This job is run every 20 seconds.') # -*- co

使用Django框架連線資料庫 pip install mysqlclient命令安裝mysqlclient 解決

1、新建一個mysite專案:django-admin startproject mysite  2、進入專案目錄,新建一個app : python manage.py startapp polls 3、安裝mysqlclient :pip install mysql

定時任務celery解決 ValueError: not enough values to unpack (expected 3, got 0)

當執行例子 result.get()  出現錯誤提示: ValueError: not enough values to unpack (expected 3, got 0) #4178 解決方式:   python manage.py cele

eggjs 框架代理調試 SELF_SIGNED_CERT_IN_CHAIN 解決方案

enable 調試 cor 問題 keychain 抓包 報錯 報錯解決 ctx eggjs 中的 this.ctx.curl 可以發起一個請求,配置 proxy 可以很方面的通過接口進行問題定位。代理方式如下: 1、開啟 egg-development-proxy

通過ssh遠程執行命令導入定時任務----解決過程

linux ssh su 今天在服務器中通過ssh遠程執行批量導入定時任務時發生了一個問題:總結如下,遠程服務器已設置好ssh秘鑰登錄,登錄用戶為普通用戶,但已設置好擁有免密sudo權限ssh 1.1.1.1 "sudo su -c "echo ‘30 5 * * 5 /bin/sh /root/

整合第三方框架NoSuchFieldError:logger

logger專案中使用springboot的版本是2.0.1.RELEASE,該版本依賴的spring版本為5.0.5.RELEASE(logger在spring版本5.0.7.RELEASE中),在專案中新增對應的spring-beans版本,問題解決了。 <dep

nginx搭建php程式解決---TP框架

1、TP框架中 出現如下錯誤:      訪問網站 http://192.168.0.204/ STORAGE_WRITE_ERROR_:./Runtime/Cache/Home/51620d75af91aa77adc53082d1113d54.php錯誤

nginx搭建php程序解決---TP框架

ive ati main tro index cati runtime control jump 1、TP框架中 出現如下錯誤: 訪問網站 http://192.168.0.204/ STORAGE_WRITE_ERROR_:./Runtime/Cache/Hom

win7環境下 docker toolbox + swoft框架掛載本機目錄啟動docker容器no such container:swoft 無法掛載啟動docker容器

今天開始整理下自己用 docker toolbox + swoft 的一些坑 第一個坑:掛載本機目錄,啟動docker容器 背景: 1、我電腦是win7(64位)系統, 已安裝了docker toolbox; 2、也照著swoft官網(https://doc.s

QMUI android 框架 git下載專案執行解決

1、編譯原始碼,報  Error:(4 0) CreateProcess error=2 系統找不到指定的檔案  錯誤。或者 input String“” 解決辦法: 開啟qmuidemo裡面的gradle檔案,註釋掉頂部的 //def cmd = 'git rev-lis

iOS AFNetworking 框架匯入解決方法

錯誤: 1. Use of undeclared identifier ‘kSecFormatUnknown‘ 2. Use of undeclared identifier ‘kSecItemPemArmour‘ 3. Implicit declaration of f

eggjs 框架代理除錯 SELF_SIGNED_CERT_IN_CHAIN 解決方案

eggjs 中的 this.ctx.curl 可以發起一個請求,配置 proxy 可以很方面的通過介面進行問題定位。代理方式如下: 1、開啟 egg-development-proxyagent ,配置 http_proxy 、 https_proxy 環境變數,將代理地址配置為本地 8888 

Volley網路框架使用過程中的一些解決辦法。

今天第一次開始使用Volley網路框架,的確使用十分便利。大致的使用步驟如下: 1.建立一個RequestQueue物件。 2.建立一個StringRequest或者JsonRequest物件 3.將步驟2建立的物件新增到RequestQueue裡面 相

Django環境的搭建以及最簡示例

.com head 存在 名稱 setting com 版本 內容 創建 一、環境的搭建   先安裝pip     yum install python-pip     安裝失敗:       安裝epel擴展源         yum install epel-relea

django啟動uwsgi

路徑 uil exe seconds ini limit pid thunder idf 查看uwsgi.log *** Starting uWSGI 2.0.17 (64bit) on [Thu Apr 5 17:46:15 2018] *** compiled

3.django連接mysql數據庫安裝mysqldb驅動解決辦法

64位 分享圖片 l數據庫 required 後來 AS password www com 1.在setting.py設置連接數據庫 DATABASES = { ‘default‘: { ‘ENGINE‘: ‘django.db.backends.m

Django集成Xadmin list index out of range解決方案

ren get 報錯解決 != del pic 錯誤提示 djang .py return self.render(context) File "C:\Python36\lib\site-packages\django\template\defaulttags