#!/bin/bash # Worker 启动脚本 — 支持 WORKER_CONCURRENCY 环境变量 # 未设置时默认 2(保持向后兼容) set -e CONCURRENCY="${WORKER_CONCURRENCY:-2}" # ⚠️ 部署约束:此 Worker 必须且只能运行单实例(replicas=1) # -B 标志嵌入 celery beat,beat 负责定期触发 pending 超时清理等定时任务 # 多实例部署会导致每个 Worker 独立运行 Beat,造成定时任务重复执行 # 若需横向扩展 Worker,必须将 Beat 拆分为独立服务(celery beat -A worker_app.celery_app) exec celery \ -A worker_app.celery_app \ worker \ --loglevel=info \ "-B" \ "--concurrency=${CONCURRENCY}"