Ho un'architettura con 1 server di backend e più server di frontend.
I server di frontend sono collegati in una connessione bidirezionale (web socket) ai client in modo che possano inviare messaggi ai client.
Il frontend e il backend sono connessi tramite un bus dei messaggi. C'è una coda per i messaggi di frontend to backend e un'altra coda per i messaggi di backend in frontend.
Ad esempio, quando un client richiede un'operazione, il frontend invia la richiesta al back-end e riconosce al client che la richiesta è stata inviata.
A volte, quando il backend termina la gestione di una richiesta, invia un messaggio di stato al frontend che lo inoltra al client che ha richiesto l'operazione.
Non ho mai visto nulla di simile. Di solito le comunicazioni vanno solo in un modo: dal frontend al backend.
Sono preoccupato, sto facendo qualcosa di bizzarro?
Mi è venuta in mente questa architettura a causa della natura bidirezionale delle prese per il web. In questo modo il server può notificare i client non appena viene elaborata una richiesta.