doc: add general architecture base document + layers base reference
All checks were successful
Cadoles/bouncer/pipeline/head This commit looks good

This commit is contained in:
2023-06-22 20:53:58 -06:00
parent 2a8849493d
commit 8d21e9083c
8 changed files with 101 additions and 9 deletions

View File

@ -1,3 +1,30 @@
## Architecture générale
# Architecture générale
> TODO
## Modèles de déploiement
### Déploiement mono-noeud
![](../resources/deployment_fr.png)
## Terminologie
Voici une liste des termes utilisés dans le lexique Bouncer.
### Proxy
Un "proxy" est une entité logique définissant le relation suivante:
- Un ou plusieurs patrons de filtrage sous la forme `<host>:<port>`. Ceux ci identifient le ou les domaines associés à l'entité;
- Une URL cible qui servira de base pour la réécriture des requêtes.
Un "proxy" peut avoir zéro ou plusieurs "layers" associés.
Un "proxy" peut être activé ou désactivé.
Un "proxy" a un poids qui définit son niveau de priorité dans la pile de traitement (plus son poids est élevé plus il est prioritaire).
### Layer
Un "layer" (calque) est une entité logique définissant un traitement à appliquer aux requêtes et/ou aux réponses transitant par un proxy.
Un "layer" peut être activé ou désactivé.
Un "layer" a un poids qui définit son niveau de priorité dans la pile de traitement (plus son poids est élevé plus il est prioritaire).

View File

@ -0,0 +1,5 @@
# Layers
Vous trouverez ci-dessous la liste des entités "Layer" activables sur vos entité "Proxy":
- [Queue](./queue) - File d'attente dynamique

View File

@ -0,0 +1,27 @@
# Layer "Queue"
## Description
Ce layer permet d'ajouter un mécanisme de file d'attente dynamique au proxy associé.
## Type
`queue`
## Options
### `capacity`
- **Type:** `number`
- **Valeur par défaut:** `1000`
- **Description:** Capacité maximum de la file d'attente.
### `keepAlive`
- **Type:** `string` (Voir [`time.ParseDuration()`](https://pkg.go.dev/time#ParseDuration) pour plus d'informations sur le format)
- **Valeur par défaut:** `1m`
- **Description:** Durée de vie d'une session dans la file d'attente sans activité avant expiration.
### Schéma
Voir le [schéma JSON](../../../../internal/queue/schema/layer-options.json).