Immagina una semplice architettura dell'architettura di servizio: server singolo in cui ho un servizio che funge da API REST (PHP), un altro servizio per il rendering di frontend (nodejs) e forse un servizio di database.
Tutti comunicano attraverso le richieste localhost, quindi ad esempio il frontend riceve i dati dall'API chiamando http://localhost:{API PORT}/v1/products
. Ora il flusso della richiesta dovrebbe essere front-end - > resto api - > database - > resto api - > frontend - > risposta al cliente.
C'è una penalità di prestazioni quando si utilizza questo approccio rispetto all'utilizzo di un'applicazione monolitica, in cui tutto è insieme? O è meglio utilizzare qualcosa come RabbitMQ per questo tipo di installazione?