Infrastructure progressive
Les 4 niveaux d'infrastructure d'Appstrate, du zéro-install au déploiement production complet.
đ§© Le modĂšle progressif
Appstrate détecte automatiquement les services disponibles au démarrage et adapte son comportement. Chaque composant manquant est remplacé par un fallback embarqué. Vous pouvez commencer sans aucune dépendance externe et ajouter des services au fur et à mesure.
Les adaptateurs d'infrastructure se trouvent dans apps/api/src/infra/ et sont chargés par import dynamique selon les variables d'environnement présentes.
đ Les 4 tiers
Tier 0 â ZĂ©ro-install
| Composant | Fallback |
|---|---|
| Base de données | PGlite (PostgreSQL embarqué en WASM) |
| Stockage | SystĂšme de fichiers local (./data/storage/) |
| File d'attente | En mémoire (BullMQ local) |
| Pub/Sub | EventEmitter en mémoire |
Aucune dépendance externe. Idéal pour le développement et l'évaluation rapide.
cp .env.example .env && bun run devTier 1 â PostgreSQL
Ajoutez DATABASE_URL pour passer à PostgreSQL. Les données deviennent persistantes et le multi-utilisateur fonctionne correctement.
| Composant | Source |
|---|---|
| Base de données | PostgreSQL (DATABASE_URL) |
| Stockage | SystĂšme de fichiers local |
| File d'attente | En mémoire |
| Pub/Sub | En mémoire |
bun run docker:dev:minimalTier 2 â PostgreSQL + Redis
Ajoutez REDIS_URL pour activer le scheduling distribué, le rate limiting et le Pub/Sub.
| Composant | Source |
|---|---|
| Base de données | PostgreSQL |
| Stockage | SystĂšme de fichiers local |
| File d'attente | BullMQ (Redis) |
| Pub/Sub | Redis Pub/Sub |
bun run docker:dev:standardTier 3 â Production complĂšte
Ajoutez S3/MinIO (S3_BUCKET) et Docker (RUN_ADAPTER=docker) pour l'isolation conteneur complĂšte.
| Composant | Source |
|---|---|
| Base de données | PostgreSQL |
| Stockage | S3 / MinIO |
| File d'attente | BullMQ (Redis) |
| Pub/Sub | Redis Pub/Sub |
| Exécution des agents | Conteneurs Docker isolés |
bun run docker:devđ Tableau rĂ©capitulatif
| Tier | Composants | Fallback en l'absence | Cas d'usage |
|---|---|---|---|
| 0 | Bun uniquement | PGlite + filesystem + file en mémoire | Développement, évaluation |
| 1 | + PostgreSQL (DATABASE_URL) | â | DonnĂ©es persistantes, multi-utilisateur |
| 2 | + Redis (REDIS_URL) | EventEmitter, Map, BullMQ local | Scheduling, rate limiting, distribué |
| 3 | + S3/MinIO (S3_BUCKET) + Docker (RUN_ADAPTER=docker) | Filesystem (./data/storage/), sous-processus Bun | Production avec isolation conteneur |
đĄ Recommandation
Pour la production, utilisez le Tier 3 avec un reverse proxy TLS. Le Tier 0 est parfait pour tester Appstrate en quelques secondes sans rien installer. Les Tiers 1 et 2 conviennent aux environnements de staging ou de développement partagé.