Jobs et queues
Statut
Document de cadrage backend — version initiale.
Rôle
Les jobs et queues servent à sortir des requêtes HTTP les traitements longs, répétitifs ou coûteux.
Ils sont essentiels pour conserver une API rapide et fiable.
État actuel visible
Jobs visibles :
ExpireBoostsExpireAlertesProcessStripeWebhook
Le scheduler Laravel exécute ExpireBoosts et ExpireAlertes toutes les heures dans api/bootstrap/app.php.
La configuration Supervisor visible cible des workers Laravel avec Redis :
- file
default; - file
mail.
Cas d'usage cibles
| Domaine | Jobs possibles |
|---|---|
| Boosts | Expiration, activation, reporting. |
| Alertes mairie | Expiration, notifications, diffusion PlayLoop. |
| Notifications | Emails, push, relances. |
| Médias | Compression, variantes, nettoyage. |
| IA | Générations longues, modération assistée, batchs. |
| Statistiques | Agrégation, consolidation, export. |
| Synchronisations | Imports, rebuild, propagation inter-apps. |
| Stripe | Webhooks, retries, logs. |
Règles de conception
- Un job doit être idempotent quand possible.
- Un job doit avoir un timeout cohérent.
- Un job doit journaliser les erreurs utiles.
- Les retries doivent être adaptés au risque.
- Les traitements critiques doivent éviter les files saturées.
- Les jobs ne doivent pas contourner les droits métier.
Files cibles
default et mail sont visibles. D'autres files relèvent de la vision cible :
notificationsmediaaianalyticscritical
Points à clarifier
- Backend queue réel par environnement.
- Politique dead-letter.
- Monitoring des workers.
- Priorité des alertes mairie.
- Stratégie de replay des jobs échoués.