[realtime_auction] 실시간 객체 생성

yoon·2023년 9월 19일

realtime_auction

목록 보기
1/3

🔎 실시간 경매 사이트
경매 상품 등록시 설정된 경매 시작 시간에 맞추어 경매 채팅방이 열려야함
django에서 작업을 스케줄링 하는 방법을 알아보자

1. Django Background Tasks 라이브러리 사용

  • Django Background Tasks 라이브러리를 사용하면 주기적으로 작업 가능
    • but, 현재 사용하고 있는 django 버전은 지원하지 않음 (django 4.1.11사용)

2. Celery와 Django-Celery-Beat

  • Celery와 Django-Celery-Beat를 사용하여 Django 애플리케이션에서 비동기 작업을 예약 가능
  • 이 방법은 보다 복잡하지만 스케줄링 옵션과 유연성이 높음

✔ 경매 채팅방은 django-channels와 redis로 구현할 예정이기 때문에 Celery + redis 선택

✅ celery

  • 비동기 작업 큐와 작업 처리자(worker)를 관리하는 역할
  • 비동기 작업을 생성하고 큐에 넣어서 나중에 처리할 수 있도록 해줌
  • 주요 역할은 작업을 분산하고, 병렬로 실행하는 것

✅ celery beat

  • 주기적인 작업을 예약하고 관리하는 역할
  • 일정한 시간 간격으로 작업을 실행하거나 특정 시간에 작업을 예약할 수 있음
  • 스케줄링 된 작업을 celery worker에 전달하여 실행
profile
하루하루 차근차근🌱

0개의 댓글