Seguro que has escuchado los términos máquina virtual y contenedor, ambos conceptos son muy importantes en el desarrollo de software, pero ¿sabes realmente que significan? ¿Puedes decirme cuáles son sus diferencias? si no es así, no te preocupes, en este blog te lo explicaré de forma fácil y sencilla:
Máquinas virtuales
Como su nombre lo dice, son máquinas que no son reales. No hay una computadora física que puedas tocar, sino que sobre un hardware existente se va instalando emulaciones de una máquina. Es decir, dentro de un Windows, otro Windows; dentro de una Mac, un Linux o Windows.
Esto permite correr varios sistema operativos sobre un mismo hardware. Además, es la base en que se construye el cloud computing (o la nube).
En resumen, una máquina virtual es:
- Un software que permiten emular el funcionamiento de un ordenador dentro de otro ordenador.
- El usuario debe configurar el procesador, RAM, disco duro, entre otros.
- Emulan desde cero sistemas como Windows, MacOS, Linux o Android.
- Requieren de gran configuración y rendimiento.
Contenedores
Los contenedores son como jaulas, donde se aíslan los procesos y no pueden ser vistos desde afuera. De esta manera, en un contenedor puedes tener las dependencias de tu aplicación, su base de datos y su código. También puedes tener otro contenedor para otra aplicación. Y cada una de las apps puede usar una versión diferente de python, y como están en contenedores distintos, completamente aislados, no causan ningún conflicto.
La ventaja de los contenedores es que no tenemos que emular un sistema operativo completo, eso consume muchos recursos. Además, con los contenedores, varios programadores pueden tener imágenes del mismo contenedor para manejar versiones idénticas del proyecto y nunca más decir el famoso: “En mi máquina funciona, que raro”.
En resumen, los contendores:
- Empaquetan el software, incluyendo las librerías, que actúan como un entorno aislado del sistema operativo.
- Trabajan directamente sobre el Kernel.
- No es necesario emular el sistema operativo porque trae todo lo necesario para ser ejecutado.
- Requieren menor uso de recursos por parte de la máquina.
Ahora que sabes la teoría, es momento de comenzar a crear tus propios servidores con nuestro curso Azure Fundamentals ¿qué esperas? ¡las primeras clases son gratis! Olvídate de las excusas y asegura un 2022 con un mejor empleo y aumento de sueldo. Recuerda que la educación es la base para tener mejores oportunidades para ti y tu familia 👨💻.