自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

Docker與虛擬機(jī)區(qū)別詳解(圖文全面總結(jié))

云計(jì)算 云原生
虛擬機(jī),是基于物理機(jī)(宿主機(jī))上運(yùn)行的獨(dú)立計(jì)算環(huán)境,擁有獨(dú)立的操作系統(tǒng)、應(yīng)用程序、和資源。比如:一臺(tái)服務(wù)器,可以模擬出多臺(tái)“虛擬機(jī)”。

Docker

Docker 是一個(gè)開源的容器化平臺(tái),能夠?qū)?yīng)用程序、及其依賴環(huán)境打包成輕量級(jí)、可移植的容器。

為什么Docker如此之風(fēng)靡?原因很簡(jiǎn)單:因?yàn)镈ocker能很好的解決在不同環(huán)境中運(yùn)行一致性,并且占用的資源還少,而且還快。

所以說(shuō),好的東西,就應(yīng)該得到更多人的喜歡,因?yàn)镈ocker確確實(shí)實(shí)解決了我們平常開發(fā)和運(yùn)維的問(wèn)題。

比如:在如今的微服務(wù)架構(gòu)中,我們可以將應(yīng)用程序拆分成多個(gè)獨(dú)立的服務(wù),每個(gè)服務(wù)運(yùn)行在獨(dú)立的容器中。

這樣,不僅方便開發(fā)、測(cè)試、和部署,而且Docker 容器可以在不同的操作系統(tǒng)和平臺(tái)上運(yùn)行,確保跨平臺(tái)的一致性。

圖片圖片

多個(gè)容器可以在同一臺(tái)計(jì)算機(jī)上運(yùn)行,并與其他容器共享其OS內(nèi)核,每個(gè)容器在用戶空間中作為隔離的進(jìn)程運(yùn)行。

虛擬機(jī)

虛擬機(jī),全程是Virtual Machine,簡(jiǎn)稱 “虛擬機(jī)VM”。

虛擬機(jī),是一種利用軟件模擬的計(jì)算機(jī)系統(tǒng),它能夠在物理硬件的基礎(chǔ)上,運(yùn)行多個(gè)虛擬計(jì)算機(jī)。

如下圖所示:

圖片圖片

虛擬機(jī),是基于物理機(jī)(宿主機(jī))上運(yùn)行的獨(dú)立計(jì)算環(huán)境,擁有獨(dú)立的操作系統(tǒng)、應(yīng)用程序、和資源。

比如:一臺(tái)服務(wù)器,可以模擬出多臺(tái)“虛擬機(jī)”。

這個(gè)時(shí)候,虛擬機(jī)運(yùn)行在一個(gè)物理主機(jī)上,它的硬件資源(如:CPU、內(nèi)存、磁盤...等),由宿主機(jī)提供并被虛擬化。

虛擬機(jī)的管理工具,常見的包括 :VMware、Hyper-V... 等,主要用于創(chuàng)建/和管理虛擬機(jī)。

雖然,看上去是多了幾臺(tái)“服務(wù)器”,但是多個(gè)虛擬機(jī)的操作系統(tǒng),是共享同一個(gè)硬件環(huán)境中并存運(yùn)行。

雖然虛擬機(jī)、和容器都是虛擬化技術(shù),但它們的運(yùn)行方式、和用途有所不同,下面我重點(diǎn)談?wù)剝烧叩膮^(qū)別@mikechen

Docker和虛擬機(jī)區(qū)別

圖片圖片

虛擬機(jī)更重,Docker相對(duì)輕量級(jí)

這是Docker和虛擬機(jī)最大的區(qū)別,我把它放到第一位。

首先,虛擬機(jī)提供完整的操作系統(tǒng)、和硬件環(huán)境,適用于需要隔離的多操作系統(tǒng)環(huán)境。

虛擬機(jī)由于每個(gè)虛擬機(jī),都需要攜帶一個(gè)完整的操作系統(tǒng)(OS),這點(diǎn)非常的重要。

所以,采用虛擬機(jī)了,即使應(yīng)用程序本身很小,整體體積也會(huì)因?yàn)椴僮飨到y(tǒng)的存在而變得龐大。

所以,這使得虛擬機(jī)不僅占用大量的存儲(chǔ)空間,還在啟動(dòng)時(shí)需要加載整個(gè)操作系統(tǒng),導(dǎo)致其啟動(dòng)時(shí)間較長(zhǎng)、運(yùn)行時(shí)的資源占用較高。

這也是為什么?Docker虛擬化技術(shù)風(fēng)靡的最重要的原因。

Docker則通過(guò)共享宿主機(jī)操作系統(tǒng)的內(nèi)核,避免了為每個(gè)應(yīng)用程序分配一個(gè)獨(dú)立的操作系統(tǒng)。

這樣,每個(gè) Docker 容器只包含:應(yīng)用程序、及其依賴,減少了鏡像的體積,并且啟動(dòng)速度更快,運(yùn)行更加輕巧。

這也是 Docker 相比虛擬機(jī)最大的優(yōu)勢(shì)之一,尤其在微服務(wù)和容器化應(yīng)用場(chǎng)景下顯得非常有效。

虛擬機(jī)啟動(dòng)慢,Docker啟動(dòng)快

剛才我已經(jīng)談到了兩者最大的區(qū)別,就談到了虛擬機(jī)需要攜帶操作系統(tǒng)(OS)。

所以,虛擬機(jī)的啟動(dòng)時(shí)間較長(zhǎng),這就很正常了,因?yàn)椋禾摂M機(jī),需要啟動(dòng)完整的操作系統(tǒng)。

而Docker容器,不需要啟動(dòng)操作系統(tǒng),因此具有更快的響應(yīng)速度。

虛擬機(jī)占用資源多,Docker占用資源小

由于虛擬機(jī),需要運(yùn)行一個(gè)獨(dú)立的操作系統(tǒng),因此資源開銷較大。

比如:虛擬機(jī)需要占用較多的 CPU、內(nèi)存、磁盤空間,并且每個(gè)虛擬機(jī)都有固定的資源分配。

所以,一臺(tái)服務(wù)器一般也就不能虛擬很多“服務(wù)器”。

而Docker 容器,共享宿主機(jī)的操作系統(tǒng)內(nèi)核,不需要額外的操作系統(tǒng)開銷。

所以,占用資源更小,是“進(jìn)程”級(jí)別的,所以資源利用率更高。

虛擬機(jī)適用重量級(jí)隔離,容器輕量級(jí)隔離

當(dāng)然,說(shuō)了這么多,也不是說(shuō)虛擬機(jī)一無(wú)是處,關(guān)鍵是用對(duì)應(yīng)用場(chǎng)景。

比如:虛擬機(jī)就適用于需要強(qiáng)隔離的多操作系統(tǒng)環(huán)境,常用于運(yùn)行不同的操作系統(tǒng)、測(cè)試環(huán)境、或需要高安全性的場(chǎng)景。

而Docker容器,更適用于:微服務(wù)架構(gòu)、持續(xù)集成與交付(CI/CD)、高密度部署、以及輕量級(jí)的隔離場(chǎng)景。

責(zé)任編輯:武曉燕 來(lái)源: mikechen的互聯(lián)網(wǎng)架構(gòu)
相關(guān)推薦

2009-08-07 11:46:57

JAVA虛擬機(jī)安裝設(shè)置

2018-05-03 14:48:22

Docker容器虛擬機(jī)

2024-07-26 10:35:00

2024-09-04 09:43:36

2024-11-06 09:54:58

SpringJava開發(fā)

2024-08-29 10:23:42

2019-10-28 11:47:15

Docker虛擬機(jī)操作系統(tǒng)

2024-05-31 13:34:57

2020-01-22 16:40:48

Java開發(fā)代碼

2024-08-07 14:56:00

Nginx反向代理配置

2024-07-12 08:42:58

Redis高性能架構(gòu)

2024-08-08 13:01:53

2017-05-31 14:52:53

虛擬機(jī)Docker容器

2023-06-03 00:04:10

容器虛擬機(jī)VM

2020-07-29 14:52:48

JVM虛擬機(jī)內(nèi)存

2025-01-15 08:34:00

分布式事務(wù)服務(wù)

2024-03-26 07:30:07

Java虛擬機(jī)源文件

2024-11-06 12:29:02

2024-08-12 16:09:31

2011-02-20 22:43:19

Citrix XenS虛擬機(jī)
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)