250x250
Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
Tags
- 파이썬
- 딥러닝
- k8s
- Deep Learning
- Docker
- 웹 프로그래밍
- GUI
- 데이터베이스
- Python
- yaml
- kubernetes
- Django
- 파이토치
- vue.js
- paper review
- Tkinter
- 그래픽 유저 인터페이스
- 텐서플로우
- 논문 리뷰
- pytorch
- 컴퓨터 비전
- numpy
- Web Programming
- POD
- OpenCV
- MariaDB
- tensorflow
- FLASK
- Computer Vision
- 장고
Archives
- Today
- Total
Maxima's Lab
[Flask] Scheduler 사용법 (APScheduler 패키지) 본문
728x90
SMALL
안녕하세요, 오늘은 Flask에서 APScheduler 패키지를 활용해서 Scheduler를 사용하는 방법에 대해서 알아보겠습니다.
먼저, APScheduler 패키지를 설치합니다.
pip install Flask APScheduler
아래는 Scheduler를 사용하는 Flask Server 예제 전체 코드입니다.
from flask import Flask
from flask_apscheduler import APScheduler
class Config:
SCHEDULER_API_ENABLED = True
app = Flask(__name__)
app.config.from_object(Config())
scheduler = APScheduler()
scheduler.init_app(app)
scheduler.start()
@app.route('/')
def index():
return "Flask Server!"
@scheduler.task('interval', id='schedule_1', seconds=5, misfire_grace_time=900)
def schedule_1():
global count
print(f"{count} : Schedule Function is executed.")
count += 1
if __name__ == '__main__':
count = 1
app.run()
위의 전체 코드에서 scheduler_1() 함수에 대해서 설명하겠습니다.
@scheduler.task('interval', id='schedule_1', seconds=5, misfire_grace_time=900)
def schedule_1():
global count
print(f"{count} : Schedule Function is executed.")
count += 1
실행 결과는 다음과 같습니다.
1 : Schedule Function is executed.
2 : Schedule Function is executed.
3 : Schedule Function is executed.
4 : Schedule Function is executed.
5 : Schedule Function is executed.
6 : Schedule Function is executed.
7 : Schedule Function is executed.
8 : Schedule Function is executed.
9 : Schedule Function is executed.
10 : Schedule Function is executed.
위의 코드에서 seconds=5(5초) 마다 scheduler_1() 함수가 실행됩니다. 추가적으로, id는 각 scheduler가 중첩되는 것을 방지하기 위해 고유한 id로 설정하게 됩니다. 마지막, misfire_grace_time (sec)은 정의된 작업을 실행할 수 없는 상황에서 해당 작업을 misfire로 간주하기 위해 대기하는 최대 시간을 의미합니다.
이상으로 APScheduler 패키지를 활용해서 Scheduler를 사용하는 방법에 대해서 알아보았습니다.
감사드립니다.
728x90
LIST
'Web Programming' 카테고리의 다른 글
[Web Programming] Modal Dialog 커스터마이징 하는 방법 (0) | 2024.02.23 |
---|---|
[Flask] Flask 모듈화 방법 (Blueprint) & current_app (0) | 2023.11.13 |
[Web Programming] Vue.js 설치 및 실행 방법 (w/ Node.js) (1) | 2023.10.28 |
[Database, DB] pymysql 라이브러리를 활용한 MariaDB 연동 - 1 (0) | 2023.10.28 |
[Database, DB] HeidiSQL 설치 및 실행 방법 (Windows) (0) | 2023.10.07 |
Comments