1. triggers 🍀 : 작업 시기를 정의. 다양한 트리거 지원
2. job stores : 예약된 작업 상태 저장 및 관리하는 저장소
3. executors : 실제 작업 실행 관리. 스레스나 프로세스 풀을 통해 수행. 스케쥴러에게 작업완료를 알리고, 적절한 이벤트 전송
4. schedulers 🌷 : 스케쥴링된 작업들을 관리 및 실행.
📌 cron 표현
리눅스(Linux)와 유닉스(Unix) 계열 OS에서 작업 스케쥴링을 위해 사용되는 시간표현 방식
pip install apscheduler
scheduler =BackgroundScheduler()
scheduler.add_job(<함수>, <트리거 실행방식>, <시간조건>)
# 작업을 5초마다 실행하는 트리거 설정
scheduler.add_job(send_message, 'interval', seconds=5)
scheduler.start()
try:
# 작업 실행 시간 동안 프로그램 유지
while True:
time.sleep(1)
except (KeyboardInterrupt, SystemExit):
# Ctrl+C 등 종료 시 스케줄러 중지
scheduler.shutdown()
from apscheduler.schedulers.background import BackgroundScheduler
import time
# 스케줄링할 작업 함수
def send_message():
print("Hello, APScheduler!")
# 백그라운드 스케줄러 생성
scheduler = BackgroundScheduler()
# 작업을 5초마다 실행하는 트리거 설정
scheduler.add_job(send_message, 'interval', seconds=5)
# 스케줄러 시작
scheduler.start()
try:
# 작업 실행 시간 동안 프로그램 유지
while True:
time.sleep(1)
except (KeyboardInterrupt, SystemExit):
# Ctrl+C 등 종료 시 스케줄러 중지
scheduler.shutdown()