Efficiente utilizzo di più contenitori docker in un singolo host

Ho un server fisico che esegue Nginx, MySQL e serve il mio sito PHP. Il server dispone di processre multi-core con 16 GB di RAM. Questo server può gestire una certa quantità di traffico web.

Ora invece di questo singolo server, se gestisco più contenitori docker in esecuzione singole istanze di Nginx (App Server) e MySQL (DB Server) in esso e l'equilibrio di carico tra i contenitori di applicazioni e database, sarà in grado di gestire la stessa quantità di il traffico come un singolo server è stato gestito o less (performance saggio)?

Come sarà la prestazione se utilizzo un server virtuale come EC2 o Digital Ocean Spreadsheet con la stessa configuration hardware anziché un server fisico?

Poiché tutto il process viene eseguito sull'host nativo (è ansible eseguire ps aux sul contenitore esterno dell'ospite e vederli). Ci dovrebbe essere un po 'di sovraccarico. Le intestazioni di networking e le voci di tabelle IP per inoltrare i pacchetti all'host virtuale aggiungeranno un sovraccarico della CPU, ma non posso immaginare che sia troppo oneroso.

Se la domanda è più nginx + 1 mysql rispetto a diversi contenitori con each nginx + mysql, probabilmente la performance saggia sarebbe meglio non utilizzare i contenitori, soprattutto perché mysql e la quantità di memory può avere se è una singola istanza vs avere più istanze separate. Puoi comunque avere la nginx in contenitori separati ma utilizzare un mysql centrale per tutti i siti, in un contenitore o less.