关于容器的三件事,你知道吗?
像Docker和Rocket这样的容器越来越受欢迎。如果你不知道容器是什么以及如何在环境中使用它们。那么请继续阅读吧。
NOW现在行动!
这怎么发生的?
据我所知,容器源于谷歌(和其他公司)对大规模水平扩展的需求。现在,这不是一个独特的问题。当时,有几种不同的解决方案可以帮助部署和协调扩展所需的应用程序和基础架构 - 即虚拟机(VM)及其编排服务(如VMware的vCenter)。然而,在像谷歌这样的公司推动的大规模规模上,服务器虚拟化有一些严重的缺点:进入容器。
什么是容器?
从本质上讲,容器和虚拟机之间的主要区别在于每个单元所涉及的开销量。
虚拟机实际上是整个服务器的组件,而不是物理硬件。简化后,它是操作系统和运行应用程序所需的所有其他组件。这是分离应用程序的好方法,但它也需要大量冗余(和开销)。
容器是应用程序及其在操作系统上运行的所有依赖项,而不是操作系统本身。操作系统内核在系统上的所有容器之间共享。这种方法通过在每个虚拟机上运行一个单独的操作系统实例来减少虚拟机引入的CPU、内存和磁盘开销。在单一的系统规模下,这不算什么考虑因素。但是,当您谈到以百万计的规模时,它可以带来令人难以置信的节省,而不会大幅降低功能。
当您谈到关键的区别时,它实际上等于“在管理程序运行的级别”,或者如果这太技术化了,那么这两种技术从其底层组件提供抽象的级别(请看下面的图像)。对于虚拟机,它从操作系统中抽象出硬件。对于容器,它从与之交互的应用程序中抽象出操作系统。这就是好处所在:容器允许应用程序进行隔离,而不需要每个应用程序都有操作系统的额外副本。操作系统占用了大量的计算机资源,因此在隔离的同时共享开销的能力是非常有效的。谷歌报告称,他们每周大约要增加20亿个容器。在这种规模下,你可以看到效率的必要性!
如何在VM和容器之间做出决定?
目前,两者经常一起使用。如果您正在AWS EC2实例上运行容器,那么您同时也在VM中运行容器。但是,需要注意的重要区别是:
安全
安全性=虚拟机。
无论何时整合资源,无论是使用虚拟机还是容器,安全都应该是最重要的。这是因为控制资源访问的过程提供了单一的、高价值的攻击目标。如果您可以破坏该过程,则可以控制使用它的所有资源。可怕,对吧?
效率
降低成本=容器。
正如我之前所说,你可以使用两者。然而,容器有很大的潜力来减少您所依赖的物理服务器的数量或您在任何云环境中的花费。尤其是现在有了像Kubernetes和Swarm这样的协调解决方案来帮助您管理环境。
在决定放入容器的内容之前,您应该考虑的另一件事是下一点......
性能
性能=取决于。
如果您的服务(应用程序)具有非常高的工作负载或需要大量资源,则您必须非常谨慎地决定将哪些服务组合在一起。虚拟机和容器都是如此。原因是支持服务的物理机器上的资源数量有限。机器越接近100%,对服务的响应就越慢,应用程序的运行速度也就越慢。
长按订阅更多精彩▼
关于容器的三件事,你知道吗?相关推荐
- java三件套_Java开发人员应该知道的三件事
java三件套 对于那些长期关注JavaOne 2012会议的读者来说,这是一篇有趣的文章. 我最近对Java冠军Heinz Kabutz的采访引起了我的注意: 包括他的Java内存难题程序,从Jav ...
- Java开发人员应该知道的三件事
对于那些长期关注JavaOne 2012会议的读者来说,这是一篇有趣的文章. 我最近对Java冠军Heinz Kabutz的采访引起了我的注意: 包括他的Java内存难题程序,从Java内存管理的角度 ...
- 人的一生有三件事不能等
人的一生有三件事不能等 人的一生有三件事不能等 第一是"贫穷" 贫穷不能等,因为一但时间久了,你将习惯贫穷,到时不但无法突破自我,甚至会抹杀了自己的梦想,而庸庸碌碌的过一辈子... ...
- 世界上最浪费时间的三件事
世界上最浪费时间的三件事 我问你,世界上最浪费时间的是什么事? 人人网?偷菜?魔兽世界? 不是,尽管它们排名也很靠前. 世界上最浪费时间的是三个单词:WORRY,BLAME,JUDGEMENT. 第一 ...
- 微信小程序:开发之前要知道的三件事
2019独角兽企业重金招聘Python工程师标准>>> 微信之父张小龙在年初的那次演讲中曾表示:"我自己是很多年的程序员,我觉得我们应该为开发的团队做一些事情". ...
- 【杂谈】提升写代码效率不得不做的三件事
想成为一个优秀的AI算法工程师必须要熟练使用Linux,这是学习AI的一个基础,如果你一直还在用Windows,那就很low了.本文我们聊聊提升写代码效率不得不做的三件事. 作者&编辑 | 汤 ...
- SAP HANA云平台YaaS,你不知道的三件事
互联网圈大事小事天天有, 各大企业新闻每天轮番上演.这不,SAP在纽约宣布推出以hybris为主导的最新客户关系管理(CRM)解决方案,其中包括三款新产品:hybris Customer Experi ...
- 写了 15 年代码,总结出提升 10 倍效率的三件事
[译者注]本文作者 Matt Watson 已经写了超过 15 年的代码,也由此总结出了提升 10 倍效率的三件事.Matt 表示,一个 10 倍效率的开发人员很快就知道了他们需要做什么,要问什么问题 ...
- 学做三件事、三句话、三乐、三不要
学做三件事 1 .学会关门 即学会关紧昨天和明天这两扇门,过好每一个今天,每一个今天过得好,就是一辈子过得好. 2.学会计算 即学会计算自己的幸福和计算自己做对的事情.计算幸福会使自己越计算越幸福,计 ...
最新文章
- Matlab编程与数据类型 -- 字符型数组
- C语言:简单而不易懂的声明(二)
- Silve“.NET研究”rlight 游戏开发小技巧:传说中的透视跑马灯
- http://blog.csdn.net/lovejavaydj/article/details/6
- (转载)Android项目实战(二十八):使用Zxing实现二维码及优化实例
- Android WebView 在内部打开链接,捕获错误
- NeurIPS2021 MBT:多模态数据怎么融合?谷歌提出基于注意力瓶颈的方法,简单高效还省计算量...
- 抱团股大跌,亏了谁的钱?
- Windows和Mac下获取(当前)进程内存占用
- 0.python class
- Spark机器学习数据流水线
- win7中文版转英文版 只须下载安装语言包
- 9、共射放大电路的失真与共射放大电路的阻抗与密勒效应
- 短距离无线传输-WIFI
- SpringCloud优点、缺点
- [ECCV2018]Generating 3D faces using Convolutional Mesh Autoencoders
- Ubuntu设置仅允许特定用户或特定IP通过ssh访问
- 苹果系统计算机常用英语,iOS开发必备英语词汇整理
- 然后删除oracle用户,oracle删除用户
- csv用excel打开中文乱码
热门文章
- react 让滚动条一直在下面_Ink 2.0 发布:命令行应用程序的 React
- 解题报告(十三)中国剩余定理(ACM / OI)
- php随机跳转,Nginx实现404页面跳转到任意随机页面
- 153和154.寻找旋转排序数组中的最小值
- 5折交叉验证_[Machine Learning] 模型评估——交叉验证/K折交叉验证
- (三)WebGIS前端地图显示之根据地理范围换算出瓦片行列号的原理(核心)
- 聊聊WEB系列_Index
- Box2dの自定义多边形
- MySQL优化篇:索引
- Nginx工作原理及优化参数配置