Repolode
agronholm

agronholm/apscheduler

cron, interval, calendar 및 일회성 트리거와 선택적 영속 작업 저장소를 지원하는 Python 작업 스케줄러 및 작업 큐 라이브러리입니다.

스타
7,688
포크
823
열린 이슈
82
마지막 커밋
12일 전

어떤 프로젝트인가요?

APScheduler(Advanced Python Scheduler)는 Python 함수를 예약된 일정에 따라 실행하거나 작업 큐에 넣어 실행하는 라이브러리입니다. 소규모 스크립트에서는 단일 프로세스로 동작하고, 여러 스케줄러와 워커가 공통 데이터 저장소를 공유하는 여러 노드 환경으로 확장할 수도 있습니다.

동기식과 비동기식 버전을 모두 제공하므로 스레드 기반 애플리케이션은 물론 asyncio 또는 Trio 애플리케이션에서도 사용할 수 있습니다. 스케줄과 작업을 PostgreSQL, MySQL, SQLite 또는 MongoDB에 저장하면 재시작 후에도 유지되고 여러 인스턴스에서 공유할 수 있습니다. 여러 스케줄러나 워커 간의 조정이 필요할 때는 PostgreSQL, Redis, MQTT를 이벤트 브로커로 사용할 수 있습니다.

기본 제공 트리거는 cron 방식, 고정 간격, 달력 기반(매년·매월·매주·매일 같은 시간) 및 일회성 실행을 지원합니다. 트리거를 조합하거나 사용자 지정 트리거를 작성할 수 있으며, 작업별 동시 실행 수, 지연 실행 허용 범위, 무작위 지터도 제한할 수 있습니다.

핵심 기능

  • 01cron, interval, 달력 기반 및 일회성 트리거와 사용자 지정 트리거
  • 02PostgreSQL, MySQL, SQLite, MongoDB용 영속 작업 저장소
  • 03여러 스케줄러와 워커를 위한 PostgreSQL, Redis, MQTT 이벤트 브로커
  • 04동기식 및 비동기식(asyncio, Trio) API
  • 05작업의 동시 실행 수, 지연 실행 허용 범위, 지터 설정

활용 사례

  • Python 웹 애플리케이션에서 주기적인 백그라운드 작업 실행
  • 공유 데이터베이스를 사용해 여러 서버에서 반복적인 데이터 동기화 또는 정리 작업 예약
  • 별도의 작업 큐가 필요하지 않을 때 경량 작업 큐로 활용
  • ASGI 또는 WSGI 애플리케이션에서 asyncio 또는 Trio 작업 트리거

사용 전 알아둘 점

  • v4.0 시리즈는 프리릴리스 버전이며 마이그레이션 경로 없이 호환성이 깨지는 변경이 있을 수 있으므로 프로덕션 환경에서 사용하지 마세요.

토픽

자주 묻는 질문

apscheduler은(는) 무엇인가요?
cron, interval, calendar 및 일회성 트리거와 선택적 영속 작업 저장소를 지원하는 Python 작업 스케줄러 및 작업 큐 라이브러리입니다. APScheduler(Advanced Python Scheduler)는 Python 함수를 예약된 일정에 따라 실행하거나 작업 큐에 넣어 실행하는 라이브러리입니다. 소규모 스크립트에서는 단일 프로세스로 동작하고, 여러 스케줄러와 워커가 공통 데이터 저장소를 공유하는 여러 노드 환경으로 확장할 수도 있습니다.
apscheduler은(는) 무료로 사용할 수 있나요? 라이선스는 무엇인가요?
apscheduler은(는) MIT 라이선스의 오픈소스입니다. 상업용 제품에 사용하기 전에 라이선스 조건을 확인하세요.
apscheduler은(는) 아직 유지보수되고 있나요?
활발히 유지보수 중. apscheduler의 마지막 커밋은 2026년 10월 26일입니다.
apscheduler은(는) 어디에 사용할 수 있나요?
Python 웹 애플리케이션에서 주기적인 백그라운드 작업 실행 공유 데이터베이스를 사용해 여러 서버에서 반복적인 데이터 동기화 또는 정리 작업 예약 별도의 작업 큐가 필요하지 않을 때 경량 작업 큐로 활용 ASGI 또는 WSGI 애플리케이션에서 asyncio 또는 Trio 작업 트리거
apscheduler은(는) 어디서 받을 수 있나요?
소스 코드와 설치 방법은 GitHub에 있습니다: https://github.com/agronholm/apscheduler

요약은 프로젝트 README를 바탕으로 AI가 작성했습니다. GitHub 통계는 매일 갱신됩니다.

관련 프로젝트