celery 升级容灾移除冗余文件

This commit is contained in:
2026-07-22 15:15:37 +08:00
parent 73243ff497
commit 06bf5c4db7
-51
View File
@@ -1,51 +0,0 @@
import asyncio
from datetime import datetime, timedelta
from app.tasks.celery_app import celery_app
@celery_app.task
def cleanup_expired_video_urls():
"""Run hourly. Clear expired video URL tokens."""
asyncio.run(_cleanup_urls())
async def _cleanup_urls():
from app.models.base import async_session
from app.models.generation_record import GenerationRecord
from sqlalchemy import update
async with async_session() as db:
now = datetime.now()
await db.execute(
update(GenerationRecord)
.where(
GenerationRecord.video_url_expires_at.isnot(None),
GenerationRecord.video_url_expires_at < now,
GenerationRecord.deleted_at.is_(None),
)
.values(video_url_expires_at=None)
)
await db.commit()
@celery_app.task
def cleanup_old_notifications():
"""Run daily. Delete read notifications older than 30 days."""
asyncio.run(_cleanup_notifications())
async def _cleanup_notifications():
from app.models.base import async_session
from app.models.notification import Notification
from sqlalchemy import delete
async with async_session() as db:
cutoff = datetime.now() - timedelta(days=30)
await db.execute(
delete(Notification).where(
Notification.is_read == True,
Notification.created_at < cutoff,
)
)
await db.commit()