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

做家纺网站哪家好中国建设银行余额查询系统

做家纺网站哪家好,中国建设银行余额查询系统,网站建设 电脑 手机,迎访问中国建设银行网站_简介#xff1a; 近日阿里巴巴开源了其云原生容器镜像加速技术#xff0c;其推出的overlaybd镜像格式#xff0c;相比于传统的分层tar包文件格式#xff0c;实现了基于网络的按需读取#xff0c;从而使得容器可以快速启动。 近日阿里巴巴开源了其云原生容器镜像加速技术 近日阿里巴巴开源了其云原生容器镜像加速技术其推出的overlaybd镜像格式相比于传统的分层tar包文件格式实现了基于网络的按需读取从而使得容器可以快速启动。 近日阿里巴巴开源了其云原生容器镜像加速技术https://github.com/alibaba/accelerated-container-image其推出的overlaybd镜像格式相比于传统的分层tar包文件格式实现了基于网络的按需读取从而使得容器可以快速启动。 该技术方案原本是阿里云内部DADI项目的一部分 DADI是Data Accelerator for Disaggregated Infrastructure的缩写旨在为计算存储分离架构提供各种可能的数据访问加速技术。镜像加速是DADI架构在容器及云原生领域的一次突破性尝试该技术自2019年投产以来已在线上部署了大量机器累计启动容器次数超过10亿支持了阿里巴巴集团及阿里云的多个业务线极大提高了应用的发布和扩容效率。2020年团队在国际顶级会议发表了论文 DADI: Block-Level Image Service for Agile and Elastic Application Deployment. USENIX ATC20[1]并随后启动了开源项目计划将技术该贡献给社区通过建立标准并打造生态吸引更多的开发者投入到容器及云原生性能优化这个领域上来。 背景简介 随着Kubernetes和云原生的大爆发容器在企业内部的大规模应用已经越来越广泛。部署启动快是容器的核心优势之一这个启动快是指本地镜像实例化的时间非常短即“热启动”时间短。然而对于“冷启动”即在本地无镜像的情况下需要先从Registry下载镜像才能创建容器。业务的镜像经过长期维护和更新无论是镜像层数还是整体大小都会达到一个较大的量级比如可能达到数百MB或者几个GB。因此生产环境中容器的冷启动往往耗时数分钟并且随规模扩大会导致Registry因集群内网络拥堵而无法快速地下载镜像。 例如在之前某年的双十一活动中阿里内部一个应用因为容量不足触发紧急扩容但因并发量过大整体扩容耗时较长这期间对部分用户的使用体验造成了影响。而到了2019年随着DADI的部署上线新镜像格式的容器在“镜像拉取容器启动”上耗费的总时间比普通容器缩短了5倍且p99长尾时间更是比后者快了17倍。 如何处理存储在远端的镜像数据这是解决容器冷启动慢这个问题的核心点。历史上业界对这一问题做出的尝试有使用块存储或者NAS保存容器镜像实现按需读取使用基于网络的分发技术如p2p将镜像从多个源头下载、或者提前预热到主机上避免出现网络单点瓶颈。近年来针对新镜像格式的讨论也逐渐被提上议题根据Harter等人的研究[2]表明拉取镜像占用了容器启动时间的76%而只有6.4%的时间用来读取数据。因此支持On-demand Read技术的镜像已经成为默认的潮流风向。Google提出的stargz[3]格式其全称是Seekable tar.gz顾名思义可以有选择地从存档中搜寻并提取特定的文件无需扫描或者解压整个镜像。stargz旨在提高镜像拉取的性能其延迟拉取技术lazy-pull不会拉取整个镜像文件实现了按需读取。为了进一步提高运行时效率stargz又推出了一个containerd的snapshotter插件在存储层面对I/O做了进一步优化。 在容器的生命周期中镜像就绪后需要挂载mount而分层镜像挂载的核心技术便是overlayfs它以一种堆叠的形式将下层的多个layer文件合并并向上暴露出一个统一的只读文件系统。类比上文提到的块存储和NAS一般可以通过快照的形式进行分层堆叠而跟stargz绑定的CRFS也可以看做是overlayfs的另一种实现。 新镜像格式 DADI没有直接使用overlayfs或者说它只是借鉴了overlayfs和早期联合文件系统union filesystem的思想但提出了一种全新的基于块设备的分层堆叠技术称之为overlaybd它为容器镜像提供了一系列基于块的合并数据视图。overlaybd的实现十分简单因此很多之前想做而不能做的事都可以成为现实而实现一个完全POSIX兼容的文件系统接口则充满挑战并可能存在bug这点从各个主流文件系统的发展历史上就可以看出。 除了简单以外overlaybd对比overlayfs的其他优点有 避免多层镜像导致的性能下降如overlayfs模式下大文件的更新会触发跨层引用复制系统必须先将文件复制到可写层或者创建硬链接速度很慢等问题可以方便地采集block级别的I/O模式进行录制以及重放从而预取数据进一步加速启动用户的文件系统和宿主机OS可以灵活选择如支持Windows NTFS可以使用有效的编解码器进行在线解压缩可以下沉到云中的分布式存储如EBS中镜像系统盘可以跟数据盘使用同一套存储方案overlaybd具有天然的可写层支持RW只读挂载甚至可以成为历史overlaybd原理 为了理解overlaybd的原理首先需要了解容器镜像的分层机制。容器镜像由多个增量layer文件组成在使用时进行叠加这样在镜像分发时只需要对layer文件进行分发。每一层实质上都是与上一层的差异包括文件的添加修改或删除的压缩包。容器引擎可以通过其storage driver按照约定的方式将差异叠加起来然后以Read-Only的模式挂载到指定目录该目录即称为lower_dir而以Read/Write模式挂载的可写层挂载目录则一般称为upper_dir。 请注意overlaybd本身没有文件的概念它只是将镜像抽象为虚拟块设备并在其上装载常规的文件系统。当用户应用读取数据时该读取请求首先由常规的文件系统处理将请求转换为虚拟块设备的一次或多次读取。这些读取请求会被转发到用户态的接收程序即overlaybd的运行时载体最后转换为对一个或多个layer的随机读取。 与传统镜像一样overlaybd在内部仍然保留着layer分层的结构但每层的内容都是文件系统变更差异对应的一系列data block。overlaybd向上提供了一个合并视图对layer的叠加规则很简单即对于任意一个data block总是使用最后的变更在layer中未发生变更的块均视为全零块向下又提供了将一系列data block导出成一个layer文件的功能该文件高密度非稀疏、且可索引。因此对块设备某个连续LBA范围进行读操作可能包含了原本属于多层的小块数据段我们将这些小块数据段称为segment。从segment的属性中找到层号便能够继续映射到对这层的layer文件的读取上来。传统的容器镜像可以将它的layer文件保存在Registry或者对象存储上那么overlaybd镜像自然也可以。 为了更好的兼容性overlaybd在layer文件的最外层包装了一层tar文件的头和尾这样伪装成一个tar文件。由于 tar内部仅一个文件不影响按需读取。目前无论是docker、containerd或者buildkit对镜像的下载或上传默认都有untar和tar的流程不侵入代码是无法逾越的所以增加tar伪装有利于兼容性和流程的统一例如在镜像转换、构建、或者全量下载使用时都无需修改代码只需提供插件即可。 整体架构 DADI整体架构如图以下分别介绍各个组件 containerd snapshotter containerd自1.4版起开始初步支持一些启动远程镜像的功能并且k8s已经明确将放弃Docker作为运行时的支持。所以DADI开源版本选择优先支持containerd生态之后再支持Docker。 snapshotter的核心功能是实现抽象的服务接口用于容器rootfs的挂载和卸载等操作。它的设计替代了在Docker 早期版本称之为graphdriver的模块使得存储驱动更加简化同时兼容了块设备快照与overlayfs。 DADI提供的overlaybd-snapshotter一方面能让容器引擎支持新的overlaybd格式的镜像即将虚拟块设备挂载到对应的目录另一方面也兼容传统OCI tar格式镜像让用户继续以overlayfs运行普通容器。 iSCSI target iSCSI是一种被广泛支持的远程块设备协议稳定成熟性能高遇到故障可恢复。overlaybd模块作为iSCSI协议的后端存储即使程序意外crash重新拉起即可恢复。而基于文件系统的镜像加速方案例如stargz则无法恢复。 iSCSI target是overlaybd的运行时载体。在本项目中我们实现了两种target模块第一种是基于开源项目tgt[4]由于其拥有backing store机制可以将代码编译成动态链接库以便运行时加载第二种是基于Linux内核的LIO SCSI target又称为TCMU[5]整个target运行在内核态可以比较方便地输出虚拟块设备。 ZFile ZFile是我们提供的一种支持在线解压的数据压缩格式。它将源文件按固定大小的block size切分各数据块进行单独压缩同时维护一个jump table记录了各数据块在ZFile中的物理偏移位置。如需从ZFile中读数据只要查找索引找到对应位置并仅解压缩相关的data block即可。 ZFile支持各种有效的压缩算法包括lz4zstd等它解压速度极快开销低可以有效节省存储空间和数据传输量。实验数据表明按需解压远程的ZFile数据性能高于加载非压缩数据这是因为传输节省的时间大于解压的额外开销。 overlaybd支持将layer文件导出成ZFile格式。 cache 正如上文所说layer文件保存在Registry上容器对块设备的读I/O会映射到对Registry的请求上这里利用到了Registry对HTTP Partial Content的支持。但是由于cache机制的存在这种情形不会一直存在。cache会在容器启动后的一段时间后自动开始下载layer文件并持久化到本地文件系统。如果cache命中则读I/O就不会再发给Registry而是读本地。 行业领先 3月25日权威咨询机构Forrester发布2021年第一季度FaaS平台Function-As-A-Service Platforms评估报告阿里云凭借产品能力全球第一的优势脱颖而出在八个评测维度中拿到最高分成为比肩亚马逊AWS的全球FaaS领导者。这也是首次有国内科技公司进入FaaS领导者象限。 众所周知容器是FaaS平台的承载基础而容器启动速度更是决定了整个平台的性能与响应延迟。DADI助力阿里云函数计算产品大幅度缩短容器启动时间50%~80%[6]带来了全新的Serverless使用体验。 总结展望 阿里巴巴开源的DADI容器加速项目以及其推出的overlaybd镜像格式有助于应对新时代下容器对快速启动的需求。项目组未来将协同社区一起加快对接主流工具链积极参与新镜像格式标准制定目标是让overlaybd成为OCI远程镜像格式的标准之一。 欢迎大家参与开源项目一起贡献力量 后续工作 Artfacts Manifest OCI Image的v1 Manifest格式描述能力有限无法满足远程镜像需求。目前v2的讨论没有实质进展推翻v1也不现实。但是可以借助OCI Artfacts Manifest使用Additional Descriptor来描述原始数据兼容性上有所保证用户更容易接受。Artfacts也是OCI/CNCF在推广的项目DADI未来计划拥抱Artfacts并实现PoC。 开放对多种文件系统的支持 DADI本身支持用户根据需要选择合适的文件系统来构建镜像但是目前尚未开放相应的接口默认使用了ext4文件系统。我们未来将完善相关接口并放开此功能由用户根据自身需要决定使用什么文件系统。 Buildkit工具链 目前用户可以通过buildkit外挂snapshotter来构建镜像未来将进一步完善形成完整工具链。 数据预取 在容器启动后对I/O模式进行记录后续启动同一镜像时便可以重放该记录对数据进行预取避免临时请求Registry这样容器的冷启动时间将继续缩短一半以上。理论上所有无状态或幂等容器都可以进行录制和重放。 原文链接 本文为阿里云原创内容未经允许不得转载。
http://www.pierceye.com/news/625547/

相关文章:

  • 布吉建设网站网站是怎么制作出来的
  • 有赞网站开发凡科建站网
  • html5商业网站开发北大青鸟wordpress免费模版
  • 网站建设及那个科目提升网站页面打开速度
  • 直接玩的网页游戏关键词优化工具有哪些
  • 单页面网站如何优化引流四川网站建设贴吧
  • 贵州省建设银行网站wordpress首页调用文章缩略图
  • 项城市住房和城乡建设局网站融资平台公司
  • asp企业网站设计sage wordpress
  • 做视频网站需要哪些条件wordpress登录页面背景图片尺寸
  • 专门教做衣服的网站西宁电商网站建设
  • 无锡网站科技公司qq哪家公司开发的
  • 强化 门户网站建设今天的新闻大事
  • 专业做刀具网站的公司单页面网站模板
  • 企业网站制作及cms技术wordpress站点 HTML
  • 网络宣传网站建设制作加盟网络推广方案怎么写
  • 花店网站建设毕设介绍wordpress批量导入txt
  • 上海市网站建设定制百度推广怎么优化关键词的质量
  • 建设工程质量检测公司网站html5 响应式音乐网站
  • 网站建设托管推广海报中文域名做的网站
  • 临沂专业网站建设公司哪家好网站建设的网页
  • 当牛做吗网站源代码分享百度云帝国怎么做网站
  • 简约网站欣赏做美食网站赚钱吗
  • 一叶子网站建设目标教育平台oss做视频网站
  • 购物网站开发流程图wordpress 批量注册
  • 如何做网站优化的内容google网站推广
  • 网站模版亮点北京电商网站开发费用
  • 南昌专业的企业网站建设公司wordpress源码在哪
  • 农家院做宣传应该在哪个网站营销代码查询
  • 大型企业网站设计案例晋江做网站的公司哪家好