tadata
← Retour à l'accueil

Edge Computing : Patterns d'Architecture et Compromis

#edge-computing#iot#cloud#architecture#cdn

L'edge computing rapproche le calcul de la source de données ou de l'utilisateur final. Ce n'est pas un remplacement du cloud mais un complément -- la bonne architecture place les charges de travail là où elles délivrent le plus de valeur selon les exigences de latence, bande passante et souveraineté des données.

Niveaux de l'edge computing

NiveauLocalisationLatenceExemples
Edge deviceSur l'appareil lui-même< 1msSmartphones, capteurs, gateways
Near edgeRéseau local / on-premises1-10msServeurs d'usine, magasins
Far edge / MECEdge telco, PoP régional5-20msMEC 5G, nœuds edge FAI
Edge CDNPoPs distribués mondialement10-50msCloudflare, CloudFront, Fastly
Région cloudData center centralisé50-200msRégions AWS, GCP, Azure

Patterns d'architecture

Edge Computing CDN

Exécuter du code aux points de présence CDN, au plus près des utilisateurs.

  • Cas d'usage : tests A/B, personnalisation, validation de tokens, geo-routage
  • Plateformes : Cloudflare Workers, Lambda@Edge, Vercel Edge Functions, Deno Deploy
  • Contraintes : temps d'exécution limité, pas d'état persistant, APIs restreintes

Edge IoT

Traiter les données on-premises ou sur des gateways avant d'envoyer au cloud.

  • Cas d'usage : inspection qualité en usine, maintenance prédictive, analytique vidéo
  • Plateformes : AWS IoT Greengrass, Azure IoT Edge, Google Distributed Cloud Edge
  • Contraintes : compute limité, connectivité non fiable, complexité de gestion de flotte

Multi-Access Edge Computing (MEC)

Compute en bordure du réseau telco, permis par la 5G.

  • Cas d'usage : véhicules autonomes, AR/VR, gaming temps réel, automatisation industrielle
  • Plateformes : AWS Wavelength, Google Distributed Cloud, Azure Edge Zones
  • Contraintes : partenariats opérateurs requis, couverture géographique limitée
tadata
Hop added latency (ms) 0 20 40 60 1 Browser cache memory / disk 0.5 ms fresh copy? no request at all 2 CDN edge PoP edge.cdn.example (Paris) 8 ms TLS ends here; WAF, bot rules, cache lookup 3 Origin shield shield.cdn.example (Frankfurt) 18 ms WARN second cache tier, protects the origin 4 Load balancer lb.shop.internal 30 ms new TLS or plain HTTP inside the VPC (virtual private cloud) 5 Application server 10.0.2.15:8080 55 ms renders the page, sets Cache-Control
Hop added latency (ms) 0 20 40 60 1 Browser cache memory / disk 0.5 ms fresh copy? no request at all 2 CDN edge PoP edge.cdn.example (Paris) 8 ms TLS ends here; WAF, bot rules, cache lookup 3 Origin shield shield.cdn.example (Frankfurt) 18 ms WARN second cache tier, protects the origin 4 Load balancer lb.shop.internal 30 ms new TLS or plain HTTP inside the VPC (virtual private cloud) 5 Application server 10.0.2.15:8080 55 ms renders the page, sets Cache-Control
Une requête à travers un CDN (latences indicatives). La réponse DNS pour shop.example.com pointe vers l'edge le plus proche, pas vers l'origine ; un cache hit s'arrête au saut 2 ; un miss passe par l'origin shield puis l'origine, dont l'IP réelle ne doit accepter que le trafic du CDN, sinon les attaquants contournent le WAF (web application firewall) en s'y connectant directement

Extrait de la fiche « How the Web Works for Security People (part 2) » · Demander la fiche complète

Compromis Edge vs Cloud

DimensionEdgeCloud
LatenceTrès faiblePlus élevée (aller-retour réseau)
Coût de bande passanteRéduit (traitement local)Plus élevé (transfert de toutes les données)
Capacité de calculLimitéeVirtuellement illimitée
Fraîcheur des donnéesTemps réelQuasi temps réel à batch
Complexité de gestionÉlevée (nœuds distribués)Plus faible (centralisé)
Modèle de coûtHardware + maintenancePay-per-use
Périmètre de sécuritéPhysiquement distribuéContrôles centralisés

Inférence AI/ML à l'edge

Exécuter des modèles ML à l'edge permet des décisions temps réel sans aller-retour cloud :

  • Optimisation de modèles -- TensorFlow Lite, ONNX Runtime, TensorRT pour les appareils contraints
  • Accélération matérielle -- NVIDIA Jetson, Google Coral, Intel Neural Compute Stick
  • Gestion de modèles -- versionnement, tests A/B et rollback sur des milliers d'appareils
  • Apprentissage fédéré -- entraîner sur les données edge sans les envoyer au cloud

Quand inférer à l'edge

FacteurInférence edgeInférence cloud
Exigence de latence< 100msSecondes acceptables
Sensibilité des donnéesNe peuvent quitter les locauxPeuvent être envoyées au cloud
ConnectivitéIntermittente ou absenteFiable
Complexité du modèleSimple à moyenComplexe, grands modèles
tadata
step size (MB)budget ≤ 20 latency (ms)budget ≤ 10 accuracy≥ 75 % budgets 0 fp32 baseline 98 ÷1.0 40 1.0× 76.1 % FAIL: size, latency 1 fp16 49 ÷2.0 22 1.8× 76.1 % +0.0 pp FAIL: size, latency 2 int8 PTQ 25 ÷3.9 12 3.3× 75.3 % −0.8 pp FAIL: size, latency 3 int8 QAT 25 ÷3.9 12 3.3× 75.9 % −0.2 pp FAIL: size, latency 4 30 % channels pruned +QAT 17 ÷5.8 8.5 4.7× 75.2 % −0.9 pp PASS ► chosen 5 distilled student int8 11 ÷8.9 6 6.7× 74.4 % −1.7 pp FAIL: accuracy Chosen: 30 % channels pruned + QAT: 5.8× smaller, 4.7× faster, −0.9 pp accuracy (smallest step meeting every budget). r = S₀ / Sᵢ (size ratio, ÷), u = L₀ / Lᵢ (speed-up, ×), ΔA = Aᵢ − A₀ (pp); S: model size (MB), L: latency (ms), A: accuracy (%), 0: baseline (firststep), i: compression step, pp: percentage points. A step passes when S ≤ size budget, L ≤ latency budget and A ≥ min accuracy.
step size (MB)budget ≤ 20 latency (ms)budget ≤ 10 accuracy≥ 75 % budgets 0 fp32 baseline 98 ÷1.0 40 1.0× 76.1 % FAIL: size, latency 1 fp16 49 ÷2.0 22 1.8× 76.1 % +0.0 pp FAIL: size, latency 2 int8 PTQ 25 ÷3.9 12 3.3× 75.3 % −0.8 pp FAIL: size, latency 3 int8 QAT 25 ÷3.9 12 3.3× 75.9 % −0.2 pp FAIL: size, latency 4 30 % channels pruned +QAT 17 ÷5.8 8.5 4.7× 75.2 % −0.9 pp PASS ► chosen 5 distilled student int8 11 ÷8.9 6 6.7× 74.4 % −1.7 pp FAIL: accuracy Chosen: 30 % channels pruned + QAT: 5.8× smaller, 4.7× faster, −0.9 pp accuracy (smallest step meeting every budget). r = S₀ / Sᵢ (size ratio, ÷), u = L₀ / Lᵢ (speed-up, ×), ΔA = Aᵢ − A₀ (pp); S: model size (MB), L: latency (ms), A: accuracy (%), 0: baseline (firststep), i: compression step, pp: percentage points. A step passes when S ≤ size budget, L ≤ latency budget and A ≥ min accuracy.
Un classifieur d'images de classe ResNet-50 sur le NPU d'un téléphone milieu de gamme ; latences et précisions indicatives, la forme du compromis est typique

Extrait de la fiche « Compression as a Workflow » · Demander la fiche complète

Défis de synchronisation des données

  • Résolution de conflits -- que se passe-t-il quand edge et cloud ne sont pas d'accord ? Last-write-wins, CRDTs, ou résolution manuelle
  • Consistance éventuelle -- les nœuds edge peuvent être hors ligne ; concevoir pour la sync éventuelle
  • Filtrage des données -- envoyer uniquement les données agrégées ou anormales au cloud
  • Gestion de la bande passante -- prioriser les données critiques quand la connectivité est limitée
tadata
App EU West Europe East US App US custom policy: your path (e.g. /version) ora merge stored procedure; unresolved →conflict feed upsert item 7: stock = 4(_ts 1000) upsert item 7: stock = 6(_ts 1002) replicate stock = 4 (_ts1000) replicate stock = 6 (_ts1002) conflict: keep higher _ts →stock = 6 conflict: keep higher _ts →stock = 6 Mises à jour concurrentes dans deux régions d'écriture, last writer wins sur_ts
App EU West Europe East US App US custom policy: your path (e.g. /version) ora merge stored procedure; unresolved →conflict feed upsert item 7: stock = 4(_ts 1000) upsert item 7: stock = 6(_ts 1002) replicate stock = 4 (_ts1000) replicate stock = 6 (_ts1002) conflict: keep higher _ts →stock = 6 conflict: keep higher _ts →stock = 6 Mises à jour concurrentes dans deux régions d'écriture, last writer wins sur_ts

Extrait de la fiche « DP-420 Domain 2: Consistency and Global Distribution » · Demander la fiche complète

Ressources

Nous utilisons des cookies analytiques pour améliorer votre expérience. Aucune donnée personnelle n'est collectée.