方案修改为 多线程 滚动
This commit is contained in:
+8
-37
@@ -1,6 +1,11 @@
|
||||
"""定时任务注册"""
|
||||
"""定时任务注册
|
||||
|
||||
from datetime import datetime, timedelta
|
||||
岗位清洗和公司补充改为持续消费模型(启动即运行),
|
||||
其余辅助任务保留定时调度。
|
||||
"""
|
||||
|
||||
import asyncio
|
||||
from datetime import datetime
|
||||
|
||||
from apscheduler.schedulers.asyncio import AsyncIOScheduler
|
||||
from apscheduler.triggers.interval import IntervalTrigger
|
||||
@@ -11,30 +16,12 @@ from app.core.logger import log
|
||||
|
||||
|
||||
def create_scheduler() -> AsyncIOScheduler:
|
||||
"""创建并注册所有定时任务"""
|
||||
"""创建并注册辅助定时任务(岗位清洗/公司补充由 main 直接启动)"""
|
||||
scheduler = AsyncIOScheduler(
|
||||
timezone="Asia/Shanghai",
|
||||
job_defaults={"misfire_grace_time": 60},
|
||||
)
|
||||
|
||||
# 岗位清洗(每 N 秒)
|
||||
scheduler.add_job(
|
||||
_job_clean_task,
|
||||
trigger=IntervalTrigger(seconds=settings.clean_interval_seconds),
|
||||
id="job_clean",
|
||||
name="岗位清洗",
|
||||
max_instances=1,
|
||||
)
|
||||
|
||||
# 公司补充(每 N 秒)
|
||||
scheduler.add_job(
|
||||
_company_clean_task,
|
||||
trigger=IntervalTrigger(seconds=settings.company_interval_seconds),
|
||||
id="company_clean",
|
||||
name="公司补充",
|
||||
max_instances=1,
|
||||
)
|
||||
|
||||
# 岗位僵尸恢复(每30分钟)
|
||||
scheduler.add_job(
|
||||
_job_zombie_task,
|
||||
@@ -65,22 +52,6 @@ def create_scheduler() -> AsyncIOScheduler:
|
||||
return scheduler
|
||||
|
||||
|
||||
async def _job_clean_task():
|
||||
from app.services.job_clean_service import run_job_clean
|
||||
try:
|
||||
await run_job_clean()
|
||||
except Exception as e:
|
||||
log.error("岗位清洗任务异常: {}", e)
|
||||
|
||||
|
||||
async def _company_clean_task():
|
||||
from app.services.company_clean_service import run_company_clean
|
||||
try:
|
||||
await run_company_clean()
|
||||
except Exception as e:
|
||||
log.error("公司补充任务异常: {}", e)
|
||||
|
||||
|
||||
async def _job_zombie_task():
|
||||
from app.services.zombie_recover_service import recover_job_zombie
|
||||
try:
|
||||
|
||||
Reference in New Issue
Block a user