一个Web应用的部署至少可以划分成以下三个发展阶段
- 传统部署时代
- 部署在物理机器上,但是不同应用所需要的环境不太一样。有可能因为一个应用需要升级SDK,导致另一个应用无法正常工作。解决方案是将各个应用单独部署在不同的机器上,隔绝他们的运行环境。
- 虚拟化部署时代
- 为了更好地利用机器,通常选择在一台物理机器上安装多个虚拟机,每个虚拟机有自己的操作系统,自己的环境。每个应用单独在虚拟机里运行
- 容器部署时代
- 容器类似于 VM,但是具有更宽松的隔离特性,使容器之间可以共享操作系统。容器也能隔绝环境,但是更轻量,一台机器运行多个虚拟机性能会显著下降,但是一台机器运行多个容器,性能没有明显变化。
两种技术的区别
虚拟机:是物理硬件的抽象,可将一台服务器变成多台服务器。管理程序允许多个虚拟机在单台机器上运行。每个 VM 都包含操作系统、应用程序、必要的二进制文件和库的完整副本——占用数十 GB。VM 的启动速度也可能很慢。
容器:容器是应用层的抽象,它将代码和依赖项打包在一起。多个容器可以在同一台机器上运行,并与其他容器共享操作系统内核,每个容器在用户空间中作为独立进程运行。与 VM 相比,容器占用的空间更少(容器映像的大小通常为数十 MB),可以处理更多应用程序并且需要更少的 VM 和操作系统。
虚拟机
容器
标签:容器,机器,操作系统,部署,虚拟机,知识,VM From: https://www.cnblogs.com/chenyingzuo/p/16609629.html