Django & Celery - 오픈 소스 작업 관리자
이 문서에서는 Django and Celery에서 제공하는 오픈 소스 작업 관리자를 소개합니다. 이 제품은 작업이 완료되면 시작, 실행 취소, 보기 출력 및 런타임 로그와 같이 일반적으로 전체 제어에서 시간이 많이 걸리는 백그라운드 작업을 실행하는 데 사용할 수 있습니다. MIT 라이선스에 따라 배포되는 소스는 상업 프로젝트 또는 eLearning 활동에 사용할 수 있습니다. 읽어 주셔서 감사합니다!
✨ 제품 하이라이트
이 프로젝트는 간단한 UI를 사용하여 요청 시 작업을 시작/취소할 수 있는 메커니즘을 구현합니다. 이 첫 번째 버전에서 제공되는 기본 기능은 다음과 같습니다.
Actions
: 생성/취소Dark Mode
작업이 시작되면 현재 상태가 UI에 즉시 반영됩니다. 이 동작은 작업 상태 및 취소 옵션을 제안하는 UI 컨트롤을 통해 UI에서 볼 수 있습니다.
실행 중인 모든 작업을 취소할 수 있으며 이 기능은 백그라운드 작업이 예상보다 많이 실행될 때 유용할 수 있습니다.
완료된 작업의 경우 사용자는 UI에서 직접 작업 출력을 확인하고 더 많은 실행 세부 정보가 필요한 경우 RUNTIME 로그를 시각화할 수 있습니다.
✨ 제품 사용 방법
백그라운드 작업 처리에는 실행 중인 Redis 서비스가 필요하며 서비스 주소는 프로젝트settings(전용 섹션)에서 구성되어야 합니다.
#############################################################
# Celery configurations
# https://docs.celeryq.dev/en/stable/django/first-steps-with-django.html
CELERY_BROKER_URL = os.environ.get("CELERY_BROKER", "redis://localhost:6379")
CELERY_RESULT_BACKEND = os.environ.get("CELERY_BROKER", "redis://localhost:6379")
CELERY_TASK_TRACK_STARTED = True
CELERY_TASK_TIME_LIMIT = 30 * 60
CELERY_CACHE_BACKEND = "django-cache"
CELERY_RESULT_BACKEND = "django-db"
CELERY_RESULT_EXTENDED = True
CELERY_RESULT_EXPIRES = 60*60*24*30 # Results expire after 1 month
CELERY_ACCEPT_CONTENT = ["json"]
CELERY_TASK_SERIALIZER = 'json'
CELERY_RESULT_SERIALIZER = 'json'
#############################################################
#############################################################
Redis가 실행 중이라고 가정하면 로컬 환경에서 제품을 시작하는 단계는 다음과 같습니다.
👉 Step #1 - Clone the sources from the public repository
$ git clone https://github.com/app-generator/sample-django-celery.git
$ cd sample-django-celery
👉 Step #2 - Install the modules using a virtual environment
$ virtualenv env
$ source env/bin/activate
$ pip3 install -r requirements.txt
👉 Step #3 - Migrate the database
$ python manage.py makemigrations
$ python manage.py migrate
👉 Step #4 - Start the project
$ python manage.py runserver
별도의 터미널 창을 사용하여 다음 명령은
Celery
관리자를 시작합니다.👉 Step #5 - Activate the VENV
$ source env/bin/activate
👉 Step #6 - Start the manager
$ celery --app=core.celery.app worker --loglevel=info
이 시점에서 수퍼유저 계정을 사용하여 작업을 실행할 수 있어야 합니다. 일반 사용자는 작업 출력 및 런타임 로그만 확인할 수 있습니다.
✨ 비디오 프레젠테이션
위의 모든 기능을 요약한 짧은 데모는 YouTube에서 찾을 수 있습니다.
Thanks for reading! For more resources and support, please access:
Reference
이 문제에 관하여(Django & Celery - 오픈 소스 작업 관리자), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://dev.to/sm0ke/django-celery-open-source-tasks-manager-36jf텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)