当前位置: 首页 > news >正文

下一代的中间件必须是支持docker规范的

下一代的中间件必须是支持docker规范的,这是中间件技术走向标准规范化的必经之路。

什么是 Docker?

答案是:Docker 是下一代的云计算模式。Docker 是下一代云计算的主流趋势.

Docker 翻译成中文是“码头搬运工”的意思,那么“码头搬运工”搬运的是什么?是标准化的“集装箱”,这个标准化“集装箱”里装的是应用程序。“码头搬运工”在世界上任何提供了标准化接驳的“码头”就可以接收标准化“集装箱”,然后快速安装、运行和管理“集装箱”里的应用程序,而提供标准化接驳“码头”的就是各类云服务商。借此,Docker 把云计算环境下的应用程序开发和分发带进了工业化生产的时代,这就是 Docker 的意义。

在 Docker 环境下,程序开发者按一定的打包标准生产程序,生产出来的标准化程序被装进标准化的容器(Container)里,也就是“集装箱”。世界各国的云服务商都提供了标准化的“码头”,可以很容易地接收标准化的容器和里面的应用程序,再把这些标准化的应用程序以即插即用的方式组装到自己的个性化解决方案里,然后提供给最终用户。而与 Docker“集装箱”对应的标准化程序架构,就是大家所熟悉的微服务。

在 Docker 时代,第一代云计算中的 IaaS 层与 PaaS 层合二为一成为了 CaaS(Container-as-a-Service,即容器即服务),这就是下一代云计算架构。基于 CaaS 的下一代云计算架构赋予了企业强大的工业化生产通用软件的能力,再根据消费者和用户的个性化需求,快速组装通用软件形成个性化的解决方案,这就是下一代的商业模式。

具有运维百万台以上服务器经验的技术人才只有谷歌、亚马逊云和微软三家而已。

成立于 1998 年的谷歌在全球运维着上千万台服务器;其次是 AWS 亚马逊云和微软 Windows Azure,他们各自拥有和运维着数百万台服务器;再次是 IBM SoftLayer 拥有和运维着数十万台服务器;最后是各个国家的区域性公有云服务商,拥有和运维着从数百台到数千台不等的服务器,从运维服务器的规模就能直接判断公有云服务商的运维经验和技术水平。

谷歌在全球运维了上千万台的服务器,这个规模已经远远超出了很多现有技术供应商的上限,因此谷歌自己发明了诸多技术用于管理千万台规模服务器,“比如谷歌研发了顶级的网络交换机,就连思科都造不出来这样的网络交换机。原因很简单,因为没有相应的实验环境。

谷歌为了避免使用市面上昂贵的基于物理机的虚拟化产品,同时也是为了更快、更便宜的发布自己的软件和服务,从一开始就研发了基于容器(Container)的新型虚拟化技术,通过这一技术简化了谷歌全部服务运行所需要的底层操作系统环境。在 2015 年 8 月的 CNUTCon 全球容器技术大会上,有超过 8 年谷歌经验的谷歌云平台软件工程师 Dawn Chen 介绍说,她 8 年半前加入谷歌的时候,那个时候谷歌刚开始研发容器技术,当时谷歌容器技术团队加上她只有两个人。如今谷歌所有的服务都运行在容器中,这包括了 Gmail、地图、GFS 文件系统、MapReduce 等。谷歌现在每秒会启动大约 7000 个容器,每周会发布超过 20 亿个容器。

谷歌实际上通过容器实现了“无缝操作系统”的愿景。稍微了解云计算的人都知道虚拟机在 IaaS 层的重要性,改变了虚拟机的方式就相当于改变了 IaaS 层的结构,这就是为什么说容器是下一代云计算模式的重要原因。容器本质上是一种操作系统技术,是基于操作系统的虚拟化技术。基于容器开发的应用软件可以达到“一处开发、处处运行”的效果,而无关乎底层到底是什么样的操作系统或什么样的 IaaS 云服务环境,这实际上就是“无缝操作系统”的概念,与之相适应的就是“无缝解决方案”和“无缝 IT”。

去年 10 月份,微软就宣布了在 Windows 服务器实现容器技术的计划,宣布了与 Docker 的合作伙伴关系,以保证无论是在 Linux 还是在 Windows Server,都可以获得一个统一、开放的体验。尽管 Linux 容器与 Windows 容器基于不同的操作系统而互不兼容,但容器管理器是统一的。近期,微软进一步宣布将针对 Windows Server 2016 发布 Windows Server 容器和 Hyper-V 容器,两种容器都支持 Docker API 和 Docker 客户端。

另一家受 Docker 冲击比较大的 VMWare 也迫不急待的在 VMWare World 2014 上就宣布了对 Docker 的支持。VMware 对容器的态度是积极的,尽管容器和基于物理机的虚拟机 VM 之间存在着竞争,但 VMware 仍然致力于扩大与容器生态合作。在 2015 年 8 月底的 VMWare World 2015 大会上,VMware 推出了一系列新的支持 Docker 的技术,并提出了未来全新的全面支持容器的技术架构,让 Docker 程序也能运行在虚拟机 VM 里了。

京东从 2014 年 10 月开始引入 Docker,2015 年 2 月对 Docker 进行战略立项,2015 年 618 的时候在生产环境中发布了 11000 多个容器实例并接入了 1000 多个应用,从 2015 年 8 月开始的新数据中心全面采用容器技术。目前京东已上线 Docker 实例 2 万多,预计到年底将翻番,届时京东大部分应用程序将通过 Docker 的方式发布。未来京东的 Docker 愿景是通过 Docker 管理所有的机器,应用程序与物理资源之间完全解耦,实现全自动化的系统维护,研发人员可以集中精力于新应用程序的开发。

其实对于容器贡献最大的还是谷歌。Docker 技术就是用谷歌的 Go 语言编写的,这是谷歌 2009 发布的第二款开源编程语言。谷歌每周发布 2 亿多的容器,这让谷歌有能力发明很多关键性的容器技术。其中包括容器管理系统,这个管理系统的第一个版本被称为 Borg,后续又发布了名为 Omega 的版本。通过这个管理系统,可以在谷歌的大规模集群资源上使用容器技术。后来业界根据谷歌的相关学术论文,模仿 Borg 开发出来的 Mesos 系统,正在被 Airbnb、Twitter、苹果 Siri 等在使用。

 

相关文章:

  • 工作流引擎(咏南开发框架)
  • android中sqlite的query中的String[]造成sql畸形
  • 【Android QR Code】开源项目:ZXing(二)二维码编码
  • 使用CountDownTimer实现倒计时功能
  • 看图学维修mp3之电源篇65Z8\65Z5
  • CentOS 7.X 安全手记
  • 《More Effective C++:35个改善编程与设计的有效方法》(中文版)
  • POJ 1635 Subway tree systems(树同构)
  • Merkle Tree算法详解
  • 数字证书
  • 400多位云计算专家和开发者,加入了同一个组织 ...
  • java字符数组char[]和字符串String之间的转换
  • .\OBJ\test1.axf: Error: L6230W: Ignoring --entry command. Cannot find argumen 'Reset_Handler'
  • js猜数字小游戏——原创
  • 戒游戏
  • [rust! #004] [译] Rust 的内置 Traits, 使用场景, 方式, 和原因
  • egg(89)--egg之redis的发布和订阅
  • ESLint简单操作
  • Linux后台研发超实用命令总结
  • Node + FFmpeg 实现Canvas动画导出视频
  • Node.js 新计划:使用 V8 snapshot 将启动速度提升 8 倍
  • PHP那些事儿
  • Promise初体验
  • tab.js分享及浏览器兼容性问题汇总
  • Terraform入门 - 3. 变更基础设施
  • 阿里云爬虫风险管理产品商业化,为云端流量保驾护航
  • 来,膜拜下android roadmap,强大的执行力
  • 小程序01:wepy框架整合iview webapp UI
  • #LLM入门|Prompt#3.3_存储_Memory
  • (2)MFC+openGL单文档框架glFrame
  • (2)关于RabbitMq 的 Topic Exchange 主题交换机
  • (3)Dubbo启动时qos-server can not bind localhost22222错误解决
  • (solr系列:一)使用tomcat部署solr服务
  • (附程序)AD采集中的10种经典软件滤波程序优缺点分析
  • (附源码)springboot“微印象”在线打印预约系统 毕业设计 061642
  • (论文阅读笔记)Network planning with deep reinforcement learning
  • (五)MySQL的备份及恢复
  • (转) 深度模型优化性能 调参
  • (转)iOS字体
  • (最完美)小米手机6X的Usb调试模式在哪里打开的流程
  • (最优化理论与方法)第二章最优化所需基础知识-第三节:重要凸集举例
  • *Algs4-1.5.25随机网格的倍率测试-(未读懂题)
  • .NET Core 版本不支持的问题
  • .NET Reactor简单使用教程
  • .NET 程序如何获取图片的宽高(框架自带多种方法的不同性能)
  • .NET 读取 JSON格式的数据
  • .net 受管制代码
  • .NET/C# 使用 ConditionalWeakTable 附加字段(CLR 版本的附加属性,也可用用来当作弱引用字典 WeakDictionary)
  • .NET6使用MiniExcel根据数据源横向导出头部标题及数据
  • .NET简谈设计模式之(单件模式)
  • .NET框架
  • .NET企业级应用架构设计系列之结尾篇
  • @param注解什么意思_9000字,通俗易懂的讲解下Java注解
  • [2013AAA]On a fractional nonlinear hyperbolic equation arising from relative theory
  • [⑧ADRV902x]: Digital Pre-Distortion (DPD)学习笔记