All checks were successful
git commit AiDA python develop 分支构建部署 / scheduled_deploy (push) Has been skipped
47 lines
1.3 KiB
Python
47 lines
1.3 KiB
Python
from celery import Celery
|
|
from kombu import Queue, Exchange
|
|
|
|
from app.core.config import settings
|
|
|
|
celery_app = Celery(
|
|
"sketch_to_garment",
|
|
broker=f"redis://{settings.REDIS_HOST}:{settings.REDIS_PORT}/2",
|
|
backend=f"redis://{settings.REDIS_HOST}:{settings.REDIS_PORT}/{settings.REDIS_DB}",
|
|
include=["app.service.sketch2garment.tasks"]
|
|
)
|
|
print(f"redis://{settings.REDIS_HOST}:{settings.REDIS_PORT}/3")
|
|
print(f"celery_app: {celery_app}")
|
|
|
|
celery_app.conf.update(
|
|
task_serializer="json",
|
|
accept_content=["json"],
|
|
result_serializer="json",
|
|
timezone="Asia/Hong_Kong",
|
|
enable_utc=True,
|
|
task_track_started=True,
|
|
task_time_limit=300, # 单个任务最长 5 分钟
|
|
task_soft_time_limit=280,
|
|
# 定义队列
|
|
task_queues=(
|
|
Queue("sketch_to_garment_queue",
|
|
exchange=Exchange("sketch_to_garment_exchange", type="direct"),
|
|
durable=True),
|
|
|
|
),
|
|
|
|
task_routes={
|
|
'app.service.sketch2garment.tasks.sketch_to_garment':
|
|
{
|
|
'queue': 'sketch_to_garment_queue',
|
|
'exchange': 'sketch_to_garment_exchange', # ← 修改这里
|
|
},
|
|
},
|
|
task_default_queue="sketch_to_garment_queue",
|
|
|
|
worker_concurrency=1,
|
|
worker_prefetch_multiplier=1,
|
|
worker_max_tasks_per_child=1,
|
|
task_acks_late=True,
|
|
task_reject_on_worker_lost=True,
|
|
)
|