nodejs – Balanceo de carga entre contenedores docker


Buen dia, tengo una API REST en NodeJS quiero ejecutarla en una instancia AWS de 4 CPU’s y 8GB de RAM, para utilizar de forma mas eficiente los 4 nucleos, quiero correr 4 instancias de mi API en la misma instancia AWS.

Estoy aprendiendo Docker por lo que me resulto interesante utilizarlo en este proyecto, así que cree una imagen de mi API, ejecute 4 contenedores de la misma imagen y utilice nginx para realizar el balanceo de carga entre los cuatro contenedores.

Utilice el paquete autocannon para obtener la cantidad de peticiones que puede resolver mi servidor en X segundos y me sorprendí al ver que el numero de peticiones que resolvía en X segundos había disminuido.

Nginx no esta corriendo en un contenedor, esta instalado en el SO de mi instancia AWS, ¿es esto un problema?
Para acceder con nginx a las API’s que corren dentro de los contenedores, simplemente expongo los puertos de mis contenedores al SO “padre”, ¿Es esto una buena idea?¿Puede ser responsable de la perdida de rendimiento?