Lin / backend /celery_app.py
Zelyanoth's picture
feat: Enhance security and configuration management
e3d8d4f
from celery import Celery
from backend.config import Config
def make_celery(app_name=__name__):
"""Create and configure Celery instance."""
celery = Celery(app_name)
# Configure Celery using the Flask app's config
celery.conf.update(
broker_url=Config.CELERY_BROKER_URL,
result_backend=Config.CELERY_RESULT_BACKEND,
task_serializer='json',
accept_content=['json'],
result_serializer='json',
timezone='UTC',
enable_utc=True,
result_expires=3600, # Results expire after 1 hour
task_routes={
# Example routing - adjust based on your actual tasks
# 'backend.tasks.example_task': {'queue': 'default'},
},
broker_connection_retry_on_startup=True,
)
return celery
# Create the main Celery instance
celery = make_celery()