面试官:Docker和传统虚拟机有什么区别?

news2024/12/23 18:01:45

我有一个程序员朋友,他每年情人节都要送女朋友一台服务器。

他说:“谁不想在过节当天收到一台 4核8g 的服务器呢?”

“万一对方不要,我还能留着自己用。” 给他一次过节的机会,他能把浪漫玩的明明白白。
所以今年情人节,他自己一个人过。
太痛了,是那种布洛芬都不知道他哪里痛的痛。

虽然人跑了,但起码还有服务器陪着他,但屏幕前依然单身的你呢? 你连服务器都没有。那么问题就来了,你买过服务器吗?看着云厂商各种产品是不是有点懵。
你知道 ecs,vps,docker 容器 是什么吗?它们有啥区别呢?

图片

我们今天来聊聊这个话题。

物理服务器是什么?

我的柜子里有一台大学时候用的废弃电脑,自带 cpu、 内存等硬件和操作系统,根据一些教程视频,是可以做成服务器的。

像这样一台看得见摸得着的机器,其实就是云厂商页面里提到的物理服务器物理机。不同厂商叫法不同,有的厂商叫它独立服务器

跟家里电脑不一样的是,云厂商的机器性能更好,核数更高,还有专业的机房和空调伺候着。那既然这样,是不是就不需要买云厂商的服务器呢?

糊涂啊,一台家用电脑跑起来 50 瓦,一年下来电费都好几百,还得花精力伺候着不让它关机,还真不如买别人家的划算。

但问题又来了,云厂商的物理服务器一般都是核数较高,很多时候我们根本不需要这么高配的机器。怎么办呢?这一点云厂商当然也考虑到了。

vps 和 ecs 是什么

云厂商一般会将一台物理服务器分割成多个虚拟机。它跟我们在 windows 用 VMwareVirtualBox 建的虚拟机其实是一回事。每个虚拟机都拥有独立的操作系统、资源(比如 CPU、内存、存储空间)和公网 IP 地址。然后对外出售,这样的虚拟机就是所谓的 VPS(Virtual Private Server,虚拟专用服务器)。

图片

VPS

但传统 VPS 有个缺点,不支持用户自主升降级,它的资源是预先分配的,不易动态调整。举个例子,假设你买了 1c1g 的服务器,想在页面上点点两下升级成 2c2g,这在传统 VPS 里是不支持的。如果给 VPS 加入自主升降级的功能,那它就成了 ECS(Elastic Compute Service,弹性计算服务)

图片

ECS支持自主升降级

用户可以根据需要随时调整 CPU、内存、磁盘和带宽,主打一个弹性。我们可以利用 ecs 学习 linux 命令,部署个人博客,做私人云盘存储,甚至可以将自己做的游戏部署到 ecs 上邀请朋友来玩。

图片

ecs的用途

docker 容器 是什么

买了 ecs 后,我们一般会开始部署自己的软件应用。机器少的时候手动部署问题不大,机器多了后各种问题就来了,其中最明显的就是,ecs 之间,如果底层操作系统不同,比如有些是 ubuntu,有些是 centos,部署应用的时候就会有各种环境问题。如果能让软件带着操作系统环境一起去部署就好了,最简单的方案是将软件和操作系统一起打包成虚拟机部署在 ecs 中。但这样就成了在 ECS(也就是虚拟机)中再运行一个完整的虚拟机,太重了。有解法吗?

图片

虚拟机上再运行一个虚拟机

有。既然多加一个操作系统太重,那我就只打包软件和系统依赖库加配置就好了。然后将这部分系统文件挂到 ecs 的操作系统下,利用一个叫 Namespace 的能力让它看起来就像是一个独立操作系统一样。再利用一个叫 Cgroup 的能力限制它能使用的计算资源。这就省掉了一层笨重的操作系统,同时还让软件轻松跑在各类操作系统上。这就是我们常说的 Docker 容器技术

图片

Docker容器是什么

总的来说就是,物理服务器上跑 ecs,ecs 跑 Docker 容器。多个 Docker 容器共享一个 ecs 实例 操作系统内核。

图片

ecs和docker容器的关系

服务器怎么选

现在我们了解完他们的区别了,但服务器款式那么多,我们怎么选?如果你是小公司老板或个体创业者,想要好一点的物理机又不想自建机房,那可以考虑买独立服务器。

如果你是像我一样的个人开发者,或者是学生,那无脑冲云服务器 ecs。有了它,我们可以很方便的在上面部署 docker 容器,平时做做实验,部署博客,完全够用了。

图片

容器里跑应用

这时候问题很多的小明就要问了,为什么不选择大厂商的云服务器?是用不起吗?喂喂喂,怎么说话呢? 不是大厂云服务器用不起,而是小厂商的更有性价比。就以同样是香港 1 核 1g 的 ecs 为例,小厂商一个月只要 1 碗红烧牛肉面。大厂商则要 3 碗。

同样是 24 核物理服务器,小厂商千把块搞定,大厂商就是它的好几倍。

这省下来的钱,能买多少份 19 块 9 5条的南极人内裤?

这时候问题很多的小明就又要问了,为什么要选香港服务器?大陆的不是更便宜吗?

那是因为香港服务器没有备案的烦恼,而且大陆也能轻松访问,有时候一些热点技术一出来,比如时下火热的 ai 技术,网站越快上线就能越早拿到搜索引擎排名,备案得等个把月,这一等就白白错失了很多成为下一个马总的机会。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1633652.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

APP上架APP Store因为苹果登录被拒,该如何解决

之前有一段时间 ,我们的APP因为苹果登录被拒了几次。分享出来,希望对大家有所帮助。 主要有两种被拒理由: 没有登录/苹果登录。登录按钮设计不符合标准。 这其实是很小的一件事情。但是就是这么小的事情,我们在这上面栽了几次跟…

【算法学习】day2

文章目录 BFS1.图像渲染2.岛屿数量 BFS 1.图像渲染 思路:BFS宽度遍历,我们需要对初始像素进行一层一层遍历,也就是上下左右四个方向进行遍历判断,如何访问这四个方向呢,就需要利用两个数组dx和dy来进行判断和遍历&…

uniapp关于iconfont字体图标使用

1、打开[阿里巴巴矢量图标库](https://www.iconfont.cn/),选择需要的图标添加到购物车 2、点开购物车,将图标添加到项目 3、点开项目,点击下载至本地,会得到一个download.zip包 4、解压download包 5、将包里的iconfont.css和iconf…

d16(149-153)-勇敢开始Java,咖啡拯救人生

跳过了p151 四小时的讲题我不敢听:) Stream Stream流,是JDK8后新增的API,可以用于操作集合或者数组的数据 优势:大量结合了Lambda的语法风格,该方式更强大更简单,代码简洁,可读性好 常用方法 …

2023最新!Git2.40.0于win10环境下的安装

2023最新!Git2.40.0于win10环境下的安装 git官网地址:https://git-scm.com/download/win/ 导航 文章目录 2023最新!Git2.40.0于win10环境下的安装导航一、下载Git二、安装Git三、检验 一、下载Git Git官网选择自己所需的版本下载 二、安装…

社区重要还是代码重要?

Apache Software Foundation,简称ASF,是世界范围内知名的软件基金会。旗下有很多世界知名的开源软件,比如Apache HTTP Server、Subversion、Hadoop等。ASF在社区治理上也有自己独特的理念,其中有一条中国开源软件圈子比较熟知&…

M2 Mac mini跑Llama3

前言 在4-19左右,Meta 宣布正式推出下一代开源大语言模型 Llama 3;共包括 80 亿和 700 亿参数两种版本,号称 “是 Llama 2 的重大飞跃”,并为这些规模的 LLM 确立了新的标准。实际上笔者早就体验过,只不过自己电脑没什…

分享三款可以给pdf做批注的软件

PDF文件不像Word一样可以直接编辑更改,想要在PDF文件上进行编辑批注需要用到一些专业的软件,我自己常用的有三款,全都是官方专业正版的软件,功能丰富强大,使用起来非常方便! 1.edge浏览器 这个浏览器不仅可…

使用 Tess4J 实现本地与远程图片的文字识别

pom: <dependency><groupId>net.sourceforge.tess4j</groupId><artifactId>tess4j</artifactId><version>5.11.0</version></dependency> 部分代码: package com.zy.datapickcli.sys.controller;import net.sourceforge.tes…

等保测评有那些流程?为什么要做等保

根据《网络安全法》规定&#xff0c;网络运营者应当按照国家的网络安全技术标准和要求&#xff0c;采取技术措施保障网络安全&#xff0c;避免网络安全事件的发生。而等保测评是国家对企事业单位进行信息系统安全等级评定的一项重要制度&#xff0c;通过等级测评&#xff0c;可…

Java 面向对象—重载和重写/覆盖(面试)

重载和重写/覆盖&#xff1a; 重载&#xff08;overload&#xff09;&#xff1a; Java重载是发生在本类中的&#xff0c;允许同一个类中&#xff0c;有多个同名方法存在&#xff0c;方法名可以相同&#xff0c;方法参数的个数和类型不同&#xff0c;即要求形参列表不一致。重载…

场景文本检测识别学习 day07(BERT论文精读)

BERT 在CV领域&#xff0c;可以通过训练一个大的CNN模型作为预训练模型&#xff0c;来帮助其他任务提高各自模型的性能&#xff0c;但是在NLP领域&#xff0c;没有这样的模型&#xff0c;而BERT的提出&#xff0c;解决了这个问题BERT和GPT、ELMO的区别&#xff1a; BERT是用来…

笑铺日记:为啥她家的顾客都爱办会员?

现在这个年代&#xff0c;做啥生意都要有自己的会员体系&#xff0c;不然生意很难做长久&#xff0c;哪来的那么多新客&#xff1f; 很多老板们想做会员营销&#xff0c;不过都停在了第一步——会员卡发不出去。推荐办卡&#xff0c;顾客一看到实体卡就反感&#xff0c;就连免…

网络安全之文件上传漏洞(上篇)(技术进阶)

目录 一&#xff0c;什么是文件上传漏洞&#xff1f;文件上传漏洞会造成什么危害&#xff1f; 二&#xff0c;文件上传靶场upload-labs闯关 Pass-01 Pass-02 Pass-03 Pass-04 Pass-05 Pass-06 Pass-07 ​Pass-08 Pass-09 Pass-10 总结 一&#xff0c;什么是文件上传漏洞&…

学习Java,下载Java和工具

下载Java地址Java17 https://www.oracle.com/cn/ 下载notepad 的博客 https://blog.csdn.net/xnxqwzy/article/details/132243264 环境变量配置

【服务器部署篇】Linux下快速安装Jenkins

作者介绍&#xff1a;本人笔名姑苏老陈&#xff0c;从事JAVA开发工作十多年了&#xff0c;带过刚毕业的实习生&#xff0c;也带过技术团队。最近有个朋友的表弟&#xff0c;马上要大学毕业了&#xff0c;想从事JAVA开发工作&#xff0c;但不知道从何处入手。于是&#xff0c;产…

2024LarkXR新增功能系列之五 | 单端口支持多并发

实时云渲染技术在为虚拟现实、游戏、和各种应用程序提供强大的渲染支持的同时&#xff0c;也带来了一些网络和运维上的挑战。在传统的设置中&#xff0c;实时云渲染推流技术需要为每个视频流单独占用服务器的一个端口。这种方法在多用户同时访问的情况下可能会导致端口资源的快…

为什么选择誉天云服务HCIE课程

誉天云服务HCIE课程亮点&#xff1a; 深度融合云原生 包含原生K8s和docker内容&#xff0c;引入isito和ASM功能进行微服务治理&#xff0c;结合Linux功底设计云上性能优化&#xff0c;和架构设计。师资力量强大 课程由两名5HCIE认证讲师授课&#xff0c;认证辅导由已通过HCIE-C…

flash_attn安装

flash_attn安装 1. cuda-nvcc安装 https://anaconda.org/nvidia/cuda-nvcc2. torch安装 # https://pytorch.org/ # 找到对应cuda版本的torch进行安装 pip3 install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cu1213. flash_attn安装 访问…

头条系统-01-环境搭建、SpringCloud微服务(注册发现、服务调用、网关)

文章目录 环境搭建、SpringCloud微服务(注册发现、服务调用、网关)1)项目介绍2)项目概述2.1)学习到的技术内容2.2)项目课程大纲2.3)项目概述2.4)项目术语2.5)业务说明 3)技术栈4)nacos环境搭建4.1)虚拟机镜像准备注&#xff1a; 4.2)nacos安装 5)初始工程搭建5.1)环境准备连接G…