2020-10-21

相信从事java编程和开发工作的朋友们对虚拟化技术并不陌生,虚拟化技术有好几种,可以应用到java程序员们的日常程序开发中。下面来讲一讲虚拟化技术的发展史以及虚拟化技术的概念和包括的内容有什么。

首先来看虚拟化技术的发展史,是怎样出现的。在虚拟化技术出现之前,如果我们想搭建一台服务器,我们需要做如下的工作:购买一台硬件服务器;在硬件服务器上安装配置操作系统系统;在操作系统之上配置应用运行环境;部署并运行应用。这种方式部署应用非常慢,需要花费的成本非常高(时间成本、服务器成本),应用迁移也麻烦,要将应用迁移,又得重复部署应用的过程:购买服务器、安装操作系统OS、配置运行环境到部署应用。所以,为了解决这个问题,后续出现了虚拟化技术。

那么虚拟化技术是什么呢?虚拟化(英语:Virtualization)是一种计算机资源管理技术,是将计算机的各种硬件资源,比如服务器、网络、CPU、内存及存储等,予以抽象和转换后呈现出一套新的硬件资源环境,在这一套新的硬件环境

下可以安装我们的操作系统,部署我们的应用运行环境等,它打破计算机硬件资源不可切割的障碍,使我们可以比原本的计算机硬件资源结构更好的方式来组合应用这些资源。

虚拟化技术的分类,虚拟化一般分为:硬件级虚拟化和操作系统级虚拟化。

硬件级虚拟化是运行在硬件之上的虚拟化技术,它的核心技术是Hypervisor,是一种运行在基础物理服务器硬件之上的软件层,可以虚拟化硬件资源,例如cpu、硬盘、内存资源等。然后我们可以通过在虚拟化出来的资源之上安装操作系统,这也就是所谓的虚拟机。像 VMWare, VirtualBox 等都是使用该技术,

我们经常使用的桌面版的虚拟机VMWare就是采用这种虚拟化技术。如下图所示:

通过Hypervisor层,我们可以创建不同的虚拟机,并且每个虚拟机都是分离、独立的,这样一来,我们就可以在一台硬件服务器和本地操作系统之上虚拟化出多个服务器,用来部署我们的应用。

以上就是对虚拟化技术的介绍,传统的虚拟化技术会有一些环境兼容性问题等缺点,但是新兴的虚拟化技术(比如Docker)就有着很多的优势,一台物理服务器可以虚拟化出多个虚拟的服务器,可以让计算机资源得以充分利用,希望大家可以通过这篇文章的介绍对虚拟化技术有一定的认识,这对java的学习是有好处的。

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。