refactor: 重命名 automation worker 为 general worker 并完善错误处理

This commit is contained in:
qzl
2026-04-01 17:24:52 +08:00
parent 0fe28a1c62
commit 24eda6ff51
19 changed files with 760 additions and 25 deletions
+2 -2
View File
@@ -29,9 +29,9 @@ SOCIAL_REDIS__DB=0
# Worker 队列分组配置
############
# agent: 常规异步任务
# automation: 批处理/重计算/可延迟任务
# general: 通用任务(analytics 写入 + automation 批处理
SOCIAL_WORKER__GROUPS__AGENT__CONCURRENCY=3
SOCIAL_WORKER__GROUPS__AUTOMATION__CONCURRENCY=1
SOCIAL_WORKER__GROUPS__GENERAL__CONCURRENCY=1
############
# Automation 调度器配置
+2 -2
View File
@@ -2,7 +2,7 @@
本目录是单机 `docker compose` 的生产交付包,架构为:
- 应用层:`web + worker-agent + worker-automation + scheduler + init-job`
- 应用层:`web + worker-agent + worker-general + scheduler + init-job`
- 中间件:`redis`
- 数据与认证:云 Supabase(通过环境变量访问)
- 反向代理:由服务器侧 nginx 托管(不在本目录编排)
@@ -81,7 +81,7 @@ cp deploy/.env.prod.example deploy/.env.prod
### 2) 启动常驻服务
```bash
docker compose --env-file deploy/.env.prod -f deploy/docker-compose.prod.yml up -d redis web worker-agent worker-automation scheduler
docker compose --env-file deploy/.env.prod -f deploy/docker-compose.prod.yml up -d redis web worker-agent worker-general scheduler
```
### 3) 执行一次性 bootstrap
+4 -4
View File
@@ -80,21 +80,21 @@ services:
- ../logs:/app/logs
- ./static/releases:/app/deploy/static/releases:ro
worker-automation:
worker-general:
image: ${SOCIAL_BACKEND_IMAGE:-social-app-backend:prod}
container_name: social-prod-worker-automation
container_name: social-prod-worker-general
restart: unless-stopped
env_file:
- ./.env.prod
environment:
- PYTHONPATH=/app/backend/src
- PYTHONDONTWRITEBYTECODE=1
- SOCIAL_RUNTIME__SERVICE_NAME=worker-automation
- SOCIAL_RUNTIME__SERVICE_NAME=worker-general
- SOCIAL_RUNTIME__ENVIRONMENT=${SOCIAL_RUNTIME__ENVIRONMENT:-prod}
- SOCIAL_REDIS__HOST=redis
- SOCIAL_REDIS__PORT=6379
command: >
sh -c '.venv/bin/taskiq worker core.taskiq.app:worker_automation_broker core.agentscope.runtime.tasks --workers ${SOCIAL_WORKER__GROUPS__AUTOMATION__CONCURRENCY:-1}'
sh -c '.venv/bin/taskiq worker core.taskiq.app:worker_general_broker core.agentscope.runtime.tasks --workers ${SOCIAL_WORKER__GROUPS__GENERAL__CONCURRENCY:-1}'
depends_on:
redis:
condition: service_healthy