虚拟机和云容器都是在硬件和操作系统以上的,区别在于虚拟机有Hypervisor层,Hypervisor层是整个虚拟机的核心,它为虚拟机提供了运行平台,同时也管理着虚拟机的操作系统运行。反观云容器,是没有Hypervisor这一层的,并且每个容器是和宿主机共享硬件的资源以及操作系统。这就导致了Hypervisor所带来的成本和性能消耗,在Linux容器这边是不存在的。
进一步了解容器和虚拟机后会发现,从虚拟化层次来看,传统虚拟化技术是对硬件资源的虚拟化,容器技术则是对进程的虚拟化,这也就是容器优势:提供更加轻量级的虚拟化,实现进程和资源的隔离。
从上图可以清楚的了解到云容器比虚拟机强在哪里:
云容器的启动速度是毫秒级别的,而虚拟机通常是需要几分钟去启动。
云容器需要的资源更少,容器在操作系统级别进行虚拟化,容器和内核交互,几乎没有性能损耗,性能优于通过Hypervisor 层与内核层的虚拟化。
容器包含应用和其所有的依赖包,但是与其他容器共享内核。容器在宿主机操作系统中,在用户空间以分离的进程运行。
领取专属 10元无门槛券
私享最新 技术干货