Django 노트(Celery 소개 및 구성)
1846 단어 Django
Celery는python을 기반으로 개발된 분포식 비동기 메시지 작업 대기열로 작업을 쉽게 비동기 처리할 수 있습니다.
인스턴스 응용 장면
비동기 호출: 메일 발송, 이미지 업로드 등
정시 작업: 정기적으로 통계 로그, 데이터 백업 등
셀러리 관련 개념
task: 수행해야 할 작업
워크맨
broker: 작업 대기열
backend: 일을 마치고 결과를 저장하는 곳
Celerra 설치 및 사용
1. 설치(주의! 설치하지 못하면 pip 앞에 sudo 권한을 추가하십시오)
pip install celery
pip install celery-with-redis
pip install django-celery
sudo apt install redis-server
2. 구성
2.1 settings.py 파일 설정
INSTALLED_APPS = [
'django.contrib.admin',
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',
# app
't8',
#
'djcelery',
]
# celery
import djcelery
djcelery.setup_loader()
BROKER_URL='redis://127.0.0.1:6379/1' # localhost
CELERY_CONCURRENCY=2 #( worker )
CELERY_RESULT_BACKEND = 'redis://127.0.0.1:6379/2' # localhost
2.2 프로젝트 디렉터리에 새로운celery.py 파일
from __future__ import absolute_import
from celery import Celery
from django.conf import settings
import os
# Django
os.environ.setdefault('DJANGO_SETTING_MODEULE',' .settings')
# celery
app = Celery('mycelery')
# APP
app.conf.timezone = "Asia/Shanghai"
# celery settings.py
app.config_from_object("django.conf:settings")
# celery (task)
app.autodiscover_tasks(lambda : settings.INSTALLED_APPS)
# app tasks.py( )
2.3 프로젝트 디렉토리의 init.py 파일에 추가
from __future__ import absolute_import, unicode_literals
from .celery import app as celery_app
다음 celery 사용
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
Django 라우팅 계층 URLconf 작용 및 원리 해석URL 구성(URLconf)은 Django가 지원하는 웹 사이트의 디렉토리와 같습니다.그것의 본질은 URL과 이 URL을 호출할 보기 함수 사이의 맵표입니다. 위의 예제에서는 URL의 값을 캡처하고 위치 매개 변수로...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.