Serviciile comunică fie sincron (cerere/răspuns peste REST sau gRPC), fie asincron (mesaje/evenimente printr-un broker ca Kafka sau RabbitMQ).
Sincron (cerere/răspuns)
Apelantul așteaptă un răspuns. Simplu și intuitiv, dar leagă disponibilitatea — dacă apelatul este inactiv, apelantul este afectat.
GET /orders/42 HTTP/1.1
Host: orders-service
Accept: application/json
Asincron (mesaje/evenimente)
Trimitorul publică un mesaj și continuă; consumatorii îl procesează mai târziu. Aceasta decuplează serviciile în timp.
Order Service ──publish "OrderPlaced"──▶ [ Broker ] ──▶ Email Service
│
└──▶ Inventory Service
