Mise à jour de la configuration de la base de données pour utiliser PostgreSQL et ajout de Redis dans le fichier .env. Modifications du Dockerfile pour installer les dépendances nécessaires. Amélioration des services de stockage pour supporter les opérations asynchrones avec S3 et le stockage local. Refactorisation des pipelines d'images pour une meilleure gestion des tâches asynchrones. Ajout de la gestion des clés API dans l'authentification. Mise à jour de la documentation et des exemples d'utilisation.
This commit is contained in:
@@ -24,6 +24,7 @@ from app.schemas import (
|
||||
)
|
||||
from app.services import storage
|
||||
from app.middleware import limiter, get_upload_rate_limit
|
||||
from app.workers.image_worker import QUEUE_STANDARD, QUEUE_PREMIUM
|
||||
|
||||
logger = logging.getLogger(__name__)
|
||||
|
||||
@@ -103,12 +104,10 @@ async def upload_image(
|
||||
|
||||
# Enqueue dans ARQ (persistant, avec retry)
|
||||
arq_pool = request.app.state.arq_pool
|
||||
queue_name = "premium" if client.plan and client.plan.value == "premium" else "standard"
|
||||
await arq_pool.enqueue_job(
|
||||
"process_image_task",
|
||||
image.id,
|
||||
str(client.id),
|
||||
_queue_name=queue_name,
|
||||
str(client.id)
|
||||
)
|
||||
|
||||
return UploadResponse(
|
||||
@@ -408,14 +407,11 @@ async def reprocess_image(
|
||||
image.processing_done_at = None
|
||||
await db.commit()
|
||||
|
||||
# Enqueue dans ARQ
|
||||
arq_pool = request.app.state.arq_pool
|
||||
queue_name = "premium" if client.plan and client.plan.value == "premium" else "standard"
|
||||
await arq_pool.enqueue_job(
|
||||
"process_image_task",
|
||||
image_id,
|
||||
str(client.id),
|
||||
_queue_name=queue_name,
|
||||
str(client.id)
|
||||
)
|
||||
|
||||
return ReprocessResponse(id=image_id)
|
||||
|
||||
Reference in New Issue
Block a user