MAISON CODE .
/ Architecture · Microservices · API

La crisi della componibilità: gestire il caos delle API

I microservizi sono ottimi finché non lo sono più. Come utilizzare i livelli di orchestrazione per impedire il distacco delle 20 API.

AB
Alex B.
La crisi della componibilità: gestire il caos delle API

“Composable Commerce” era la parola d’ordine del 2024. Rompi tutto! Utilizza Contentful per i contenuti, Shopify per il checkout, Algolia per la ricerca, Klaviyo per la posta elettronica. All’improvviso, hai 15 API da gestire. Se Algolia non funziona, il tuo sito sarà vuoto. Se Contentful modifica la struttura dei dati, il tuo frontend si blocca.

Il livello di orchestrazione

Risolviamo questo problema con un BFF (Backend for Frontend) o “Middleware”. Invece di comunicare direttamente con 15 servizi, il frontend comunica con la nostra API. La nostra API aggrega i dati, li normalizza, li memorizza nella cache e invia un singolo payload JSON pulito al frontend.


Vantaggi

  1. Resilienza: se il CMS non è attivo, la nostra API fornisce dati memorizzati nella cache non aggiornati. Il sito rimane attivo.
  2. Prestazioni: il browser effettua 1 richiesta invece di 15. L’aggregazione avviene lato server, dove la larghezza di banda è economica.
  3. Sanatizzazione: eliminiamo i campi privati ​​prima che raggiungano il cliente.

Federazione

Usiamo la GraphQL Federation per unire insieme questi schemi. Per lo sviluppatore frontend, sembra un database gigante. Per l’ingegnere backend, è una sinfonia di servizi indipendenti. Organizza il caos.