Diciamo che stiamo parlando di un webshop.
- Microservice 1: gestisce i prodotti e i relativi prezzi
- Microservice 2: responsabile del pagamento e del pagamento.
Se un utente desidera pagare un prodotto, viene richiamato il servizio di pagamento. Il servizio deve restituire il successo o il fallimento in modo sincrono. Anche il servizio deve garantire di utilizzare i prezzi correnti.
Quindi il flusso di lavoro corrente passa i productIds al servizio di pagamento. I servizi di pagamento interrogano il prezzo corrente (dal servizio 1 SYNCHRON). Il servizio di pagamento esegue la procedura di pagamento.
Flusso di lavoro:
Caller (App) -> Payment service -> Product service -> Payment service -> Caller (App)
In che modo uno scenario di questo tipo può essere ottimizzato per la comunicazione asincrona? O la comunicazione sincrona attraverso i servizi di riposo è la migliore?