34 lines
1.3 KiB
Python
34 lines
1.3 KiB
Python
from celery import Celery
|
|
from core.config import settings
|
|
import os
|
|
|
|
# Configuración de Celery
|
|
celery_app = Celery(
|
|
"microservice",
|
|
broker=f"redis://{os.getenv('REDIS_HOST', 'localhost')}:{os.getenv('REDIS_PORT', '6379')}/{os.getenv('REDIS_DB', '0')}",
|
|
backend=f"redis://{os.getenv('REDIS_HOST', 'localhost')}:{os.getenv('REDIS_PORT', '6379')}/{os.getenv('REDIS_DB', '0')}",
|
|
include=['tasks']
|
|
)
|
|
|
|
# Configuración adicional
|
|
celery_app.conf.update(
|
|
task_serializer='json',
|
|
accept_content=['json'],
|
|
result_serializer='json',
|
|
timezone='UTC',
|
|
enable_utc=True,
|
|
task_track_started=True,
|
|
task_time_limit=3600, # 1 hour timeout
|
|
worker_prefetch_multiplier=1,
|
|
worker_max_tasks_per_child=1000,
|
|
)
|
|
|
|
# Autodiscovery of tasks
|
|
celery_app.autodiscover_tasks()
|
|
|
|
from api.api_v2.modules.acuses.tasks import process_acuse_request
|
|
from api.api_v2.modules.coves.tasks import process_cove_request, process_acuse_cove_request
|
|
from api.api_v2.modules.edocs.tasks import process_edoc_download_request, process_edocs_masivo_download_request
|
|
from api.api_v2.modules.pedimentos.tasks import process_pedimento_completo_request
|
|
from api.api_v2.modules.partidas.tasks import process_partida_request
|
|
from api.api_v2.modules.remesas.tasks import process_remesa_request |