# Backend development --- ## Overview + Architecture serveur + Traitement et stockage de données + Frameworks + Scaling --- ### Architecture Serveur ![[Pasted image 20250312154125.png]] -- ### Reverse proxy ![[Pasted image 20250312154343.png]] + Résoud les requêtes (routing) + Load balancing + Cryptographie et certificats -- ### Web server ![[Pasted image 20250312155058.png]] + Le moteur écoute les requête, sérialise les réponses, gère les imprévus, fait tourner le code de l'API + l'API est la partie programmable du serveur, la plaque tournant de la logique -- ### Stockage ![[Pasted image 20250312155847.png]] + Base de données + Permet une structuration efficace et performante des données + Peut être versionnée, backupé, migré -- ### BDD relationnelles (schemafull) + Extrêmement polyvalentes et performantes + ACID (atomicity, consistency, isolation, and durability) + difficiles à scale -- ### BDD NoSQL (schemaless) + Données structurées de manière plus flexible + Manipulées comme du JSON, naturel à utiliser depuis l'OO + plus facile à aborder et à scale initialement + Non ACID -- ### BDD Clé-valeur + Un genre de gros dictionnaire en mémoire vive + Performance++ + Souvent utilisé comme cache pour les données fréquemment lues + Ou pour des usages répétés mais relativement simples -- ### BDD en graph + Comme une base de d