Files
ObsidianWork/Subjects/Backend development.md

1.4 KiB

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