docs: ajout des pages alignées avec le template 4NK
This commit is contained in:
parent
6907e4baf1
commit
53c6301be2
@ -12,6 +12,18 @@ Ce dossier documente l'API HTTP, l'architecture et les décisions techniques.
|
||||
- Service `StorageService` (voir `src/lib.rs`) encapsule la logique de stockage, récupération et nettoyage TTL.
|
||||
- `src/main.rs` démarre Tide avec état `StorageService` et une boucle de nettoyage périodique (60s).
|
||||
|
||||
Voir aussi:
|
||||
- `architecture.md`
|
||||
- `configuration.md`
|
||||
- `guides_principaux.md`
|
||||
- `guides_techniques.md`
|
||||
- `guides_test.md`
|
||||
- `tests_monitoring.md`
|
||||
- `reseau_de_relais.md`
|
||||
- `developpement.md`
|
||||
- `depannage.md`
|
||||
- `performance.md`
|
||||
|
||||
## REX technique
|
||||
|
||||
- Docker
|
||||
|
13
docs/architecture.md
Normal file
13
docs/architecture.md
Normal file
@ -0,0 +1,13 @@
|
||||
# Architecture
|
||||
|
||||
## Flux de Données
|
||||
|
||||
- Entrées: requêtes HTTP `/store`, `/retrieve/:key`.
|
||||
- Traitements: validation clés/TTL, encodage hex, stockage FS hiérarchique, métadonnées TTL.
|
||||
- Sorties: réponses JSON normalisées.
|
||||
|
||||
## Composants
|
||||
|
||||
- Service `StorageService` (I/O disque, TTL, nettoyage).
|
||||
- Serveur HTTP Tide (routes, état partagé).
|
||||
- Nettoyage périodique (60s) basé sur fichiers `.meta`.
|
8
docs/configuration.md
Normal file
8
docs/configuration.md
Normal file
@ -0,0 +1,8 @@
|
||||
# Configuration
|
||||
|
||||
## Services Disponibles
|
||||
- HTTP sur port 8081
|
||||
|
||||
## Variables d'Environnement
|
||||
- `RUST_LOG` (optionnel): niveau de logs.
|
||||
- Pour Docker, monter `/app/storage` si persistance souhaitée.
|
15
docs/demarrage_rapide.md
Normal file
15
docs/demarrage_rapide.md
Normal file
@ -0,0 +1,15 @@
|
||||
# Démarrage Rapide
|
||||
|
||||
## Prérequis
|
||||
- Rust stable et Cargo
|
||||
- Optionnel: Docker
|
||||
|
||||
## Installation
|
||||
- `cargo build`
|
||||
|
||||
## Lancement
|
||||
- `cargo run -- --permanent`
|
||||
|
||||
## Docker (optionnel)
|
||||
- Build: `docker build -t sdk_storage:local .`
|
||||
- Run: `docker run --rm -p 8081:8081 -v $PWD/storage:/app/storage sdk_storage:local`
|
12
docs/depannage.md
Normal file
12
docs/depannage.md
Normal file
@ -0,0 +1,12 @@
|
||||
# Dépannage
|
||||
|
||||
## Problèmes Courants
|
||||
1. Ports déjà utilisés: changer le port de publication Docker.
|
||||
2. Permissions storage: vérifier l'UID/GID et droits du volume.
|
||||
3. Clés invalides: s'assurer d'un hex 64 caractères.
|
||||
|
||||
## Logs détaillés
|
||||
- Exécuter avec `RUST_LOG=info`.
|
||||
|
||||
## Healthchecks
|
||||
- Ajouter une route `/health` (évolution possible) ou ping sur `/retrieve` avec clé connue.
|
13
docs/developpement.md
Normal file
13
docs/developpement.md
Normal file
@ -0,0 +1,13 @@
|
||||
# Développement
|
||||
|
||||
## Structure du Projet
|
||||
- `src/lib.rs`: service métier
|
||||
- `src/main.rs`: serveur HTTP Tide
|
||||
- `tests/`: scénarios d'intégration
|
||||
|
||||
## Ajout d'un Nouveau Service
|
||||
- Créer une abstraction dédiée dans `src/lib.rs` ou module séparé.
|
||||
- Câbler dans `main.rs` via `tide::with_state` si nécessaire.
|
||||
|
||||
## Modification de la Configuration
|
||||
- Mettre à jour `docs/configuration.md` et secrets CI/CD.
|
5
docs/guides_principaux.md
Normal file
5
docs/guides_principaux.md
Normal file
@ -0,0 +1,5 @@
|
||||
# Guides Principaux
|
||||
|
||||
- Concepts de base: clés hex 64, valeurs hex, TTL en secondes.
|
||||
- API: `/store` (POST), `/retrieve/:key` (GET).
|
||||
- Persistance: système de fichiers, sous-dossiers par préfixe de clé.
|
6
docs/guides_techniques.md
Normal file
6
docs/guides_techniques.md
Normal file
@ -0,0 +1,6 @@
|
||||
# Guides Techniques
|
||||
|
||||
- `StorageService`: abstraction des opérations de stockage.
|
||||
- TTL: sérialisé dans `*.meta` (UNIX timestamp secondes).
|
||||
- Nettoyage: parcours des dossiers, suppression données expirées.
|
||||
- Journalisation: sorties standard, intégration possible avec superviseur.
|
5
docs/guides_test.md
Normal file
5
docs/guides_test.md
Normal file
@ -0,0 +1,5 @@
|
||||
# Guides de Test
|
||||
|
||||
- Tests unitaires recommandés sur `StorageService` via répertoires temporaires.
|
||||
- Tests d'intégration HTTP optionnels via client HTTP.
|
||||
- Stratégies: cas TTL min/max, clés invalides, conflits de clé.
|
9
docs/performance.md
Normal file
9
docs/performance.md
Normal file
@ -0,0 +1,9 @@
|
||||
# Performance
|
||||
|
||||
## Ressources Recommandées
|
||||
- Disque rapide si grand volume d'écritures.
|
||||
- Mémoire suffisante pour buffers I/O.
|
||||
|
||||
## Optimisations
|
||||
- Paramétrer la taille des blocs et la stratégie de fsync selon contraintes.
|
||||
- Éviter les collisions de clés, supervision du cleanup TTL.
|
10
docs/reseau_de_relais.md
Normal file
10
docs/reseau_de_relais.md
Normal file
@ -0,0 +1,10 @@
|
||||
# Réseau de Relais
|
||||
|
||||
## Architecture Mesh
|
||||
- À définir selon déploiement.
|
||||
|
||||
## Ajout de Nœuds Externes
|
||||
- Procédure à documenter si nécessaire.
|
||||
|
||||
## Configuration Externe
|
||||
- Ports, sécurité, endpoints à exposer.
|
8
docs/tests_monitoring.md
Normal file
8
docs/tests_monitoring.md
Normal file
@ -0,0 +1,8 @@
|
||||
# Tests et Monitoring
|
||||
|
||||
## Tests
|
||||
- Unitaires et intégration via `cargo test`.
|
||||
|
||||
## Monitoring
|
||||
- Exposer métriques avec un reverse proxy/sidecar si nécessaire.
|
||||
- Ajouter des healthchecks HTTP au niveau de l'orchestrateur.
|
Loading…
x
Reference in New Issue
Block a user