弹性微服务的4种部署策略

来源 :计算机世界 | 被引量 : 0次 | 上传用户:nosmallstar2
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
  与传统架构相比,开发人员使用微服务构建应用程序速度会更快、更灵活。但是,每一次修改代码仍然会带来风险,如果没有发现并解决代码质量问题,就为潜在的失败埋下了伏笔。为了降低这类风险,应用程序开发团队应实施现代的云原生路由策略,以便更方便地测试危险因素,并确保应用程序能真正准备好部署到产品环境中。

  以下4种部署策略使用路由技术安全地引入新的服务和特性、测试功能、改进迭代、发现并消除漏洞等等。这些方法共同构成了一个虚拟工具箱,应用程序开发团队可以使用它们来降低开发和部署微服务应用程序时的风险。

金丝雀部署


  “金丝雀”的命名源于一种历史上的习惯做法,人们把实际的鸟类放到煤矿里,目的是查看空气质量对人类是否安全,金丝雀部署是以最小影响和最小风险测试实际产品部署的一种方式。所谓的金丝雀是一个服务的候选版本,它按照一定百分比来采集输入请求的子集(比如1%),尝试一下新的特性或者构建方法。然后,开发团队可以检查结果,如果进展顺利,可逐步将部署增加到100%的服务器或者节点。如果不顺利,则在检查和调试有问题的代码时,可以利用金丝雀部署快速重定向数据流。
  金丝雀部署可以通过与负责处理流入用户数据流的边缘路由组件集成来实现。以这种方式路由数据流可以确保在正式推出新服务之前验证新服务是否可行。如果不可行,就会被退回以解决问题,在准备好后再进行新一轮金丝雀部署测试。

A/B测试


  A/B测试与金丝雀部署类似,但有一个重要的区别。金丝雀部署偏重于发现漏洞和性能瓶颈,而A/B测试则偏重于衡量用户对新应用程序特性的接受程度。例如,开发人员可能想知道新特性是否受用户欢迎,是否容易被发现,或者UI功能是否正常等等。
  这种模式使用软件路由來激活并测试不同数据流区段的某些特性,把新特性呈现给指定百分比的数据流,或者有限的组。A和B路由区段可能会将数据流发送到软件的不同内部开发版本,服务实例甚至能使用相同的软件内部开发版本,但具有不同的配置属性(就像在编排器或者其他地方指定的那样)。

蓝-绿部署


  蓝-绿部署模式涉及到并行操作两个产品环境:一个用于当前稳定版本(蓝色),另一个用于在下一版本上准备和执行测试(绿色)。这种策略使更新后的软件版本能够以一种易于重复的方式来发布。DevOps团队可以使用这一方法,通过CI/CD(Continuous Integration and Delivery)管道自动执行新版本的发布。
  采用蓝-绿策略,现有实例在处理产品数据流时,开发人员可以同时部署新的服务版本。一旦新服务通过了最后的测试,就可以使用软件路由无缝地管理从蓝到绿的数据流切换,数据流就可以安全地自动重定向到新服务。同样重要的是,如果在最后一刻出现了关键问题,可以简单地将部署回退到蓝色版本。

数据流屏蔽


  数据流屏蔽与蓝-绿部署类似,但路由技术不是使用综合测试来验证“绿色”环境,而是复制所有输入的产品数据流,并将其镜像到尚未公开的单独的测试部署中。这样,数据流屏蔽部署基于真实的数据流,能够清楚地展现新版本部署后会出现什么情况。同时,数据流屏蔽部署保证了测试不会影响实际产品。
  企业开发人员已经利用了一系列旨在确保新应用程序代码能够满足某些要求的测试技术。例如,单元测试和功能测试仍然是清理代码的基本措施。然而,基于微服务体系结构的本质使得端到端集成测试比以往任何时候都更为重要。考虑到微服务体系结构固有的相互依赖性和长期接口漂移的风险,综合测试仍然有价值,但最终无法准确地表示产品环境中服务之间的所有交互。

4种策略,一个目标


  这些路由技术都提供了独特但又相关的方法来帮助发现、缓解和测试基于微服务的应用程序中的缺陷。它们是解决漏洞、性能问题和安全薄弱点的有力工具,尤其是作为端到端持续集成和交付(CI/CD)管道的一部分进行部署时。
  这些方法中哪一种最适合你自己的情况,很大程度上取决于最关键的问题所在。例如,对UI进行重大调整非常适合采用A/B测试,而蓝-绿部署则适用于了解新特性怎样影响现有数据存储的性能。
  通常,把这些方法组合起来使用,覆盖范围会更好。但是,重要的是要考虑每一种部署与现有开发模型的集成程度。例如,侧重单个特性的金丝雀部署比完整版本的蓝-绿部署更适合敏捷开发方法。虽然数据流屏蔽部署能够在部署前很好地了解应用程序的性能,但其实现起来很困难而且非常耗时,计算资源也很昂贵。
  通过应用这些方法中的一种、一些或者全部,同时注意它们的具体优势,应用程序开发团队能够更好地保证项目的完整性和项目的成功,更有信心地投入生产。
  Manuel Zapf是从事开源项目Traefik和Maesh的云原生网络公司Containous的产品OSS负责人。
  原文网址
  https://www.infoworld.com/article/3565750/4-deployment-strategies-for-resilient-microservices.html
其他文献
在人工智能介入之前,读取脑电波基本没什么用。而现在读心术有了实际应用。  有一种想法:读心术软件不仅可用于商业用途,而且在日常业务应用中也有实际应用价值。  但是请稍等。这是不是会令人感到毛骨悚然,受到了侵害,而且没什么用呢?不过,请继续阅读这篇文章,你或许就会改变想法。  缺少的因素  未来学家多年来一直在预测读心术。虽然几十年来,我们已经能够检测脑电波模式,但缺少的因素是解释脑电波的能力。  
[摘要]十六国时期是我国民族融合的重要阶段。但传统观点认为这一时期民族矛盾尖锐、民族仇杀不断,是我国历史上异常黑暗的时期。本文认为,少数民族内迁并不是祸乱的根源。其问,所谓的民族矛盾在大多数情况下都是阶级矛盾;而民族仇杀也多是各族统治阶级为实现自己野心,人为造成的。正是这些野心家,给各族民众带来了苦难。在不断地冲突与整合中,民族界限逐渐消除,各族人民融入中华民族这一大家庭中。  [关键词]十六国时
使云更加安全不仅仅是个技术问题,更需要与其他安全系统互通有无。  云安全问题如今也许不再是一个问题。的确,如今我们在公有云方面拥有最好的安全技术,在某些案例中,它比那些已经不再受到研发费用青睐的内部系统中的安全技术还要好。  因此,如果在云中的安全性非常好,那么为什么很多IT从业者还是认为存在问题呢?事实是公有云从来都不是单独工作的 (尽管其看似好像是单独工作,如果相信那些公有云提供商的话),它们
南洋中华商会具有悠久的历史,在南洋华人的经济及社会活动中发挥了重要作用。不仅如此,南洋中华商会在近代曾经与国内政府及商会有着密切互动,后来虽专注于在地化的商人整合,与国内一度有所隔离,但在20世纪90年代后逐步跨越国界,在推动东亚甚至全球范围内的华商网络建构方面作出了重要贡献。因此,南洋中华商会的研究不仅可以使中国商会史更为完整,而且由此角度观察东南亚华人社会及东亚华人经济圈的整合,在此全球化时代
[摘要]“空中闪电”危机不仅是英美关系史上的一件大事,也是英国核战略转变的分水岭。之后,英国核战略由独立核威慑转向了依赖美国;战略核力量构成由“空基”为主转向了“海基”为主;核保护义务由一国转向了北约盟国。英美核关系也出现了革命性变化。  [关键词]“空中闪电”危机,英国,核战略,英美核关系  [中图分类号]K5 [文献标识码]A [文章编号]0457-6241(2011)02-0049-06  
晚清时期“Republic/共和”概念的输入与接受,既是知识领域的跨文化互动问题,也是政治领域的现实行动选择问题。鸦片战争之后,中国人对西方共和概念的了解长期呈现名与实依违不定的特征。19世纪80年代初期,近代意义上的“共和”一词通过日文传入中国。1898-1902年间,梁启超等人经由日文著述对西方政体分类知识进行系统介绍,近代共和概念由此迅速流行开来,与革命潮流互为推演,并逐渐与中国古典“共和”
摘要 第二次柏林危机爆发之后,英国从自身利益出发主张用和平谈判的方式解决危机,反对法国和联邦德国的对苏强硬立场,更反对美国“有限使用武力”的军事应急方案。麦克米伦的访苏之行,为东西方间的缓和创造了条件,开启了会议谈判的大门。在麦克米伦政府的斡旋之下,美、英、法、苏日内瓦外长会议得以召开,四大国首脑会议亦纳入日程,对柏林危机的缓和起到了重要作用。  关键词 麦克米伦政府,第二次柏林危机,缓和,冷战 
你还记得曾经铺天盖地出现在北京地铁里的云台山旅游广告吗?  如果我告诉你,这是经过大数据分析,精准投放给北京居民的广告,你会不会感到惊讶?  事实上,这就是一个旅游行业 大数据的成功案例。  通过对游客的流量、归属地、抵达交通工具、驻留时间、消费行为和能力的大数据进行分析,云台山旅游公司发现:虽然北京的人口仅占全国人口的2%,但是在来云台山旅游消费的游客中,有60%是来自北京的。于是他们选择在北京
如果你问一家企业的首席安全官:你是要合规,还是要攻击防护?你是要全网统一安全策略,还是要对Per APP(每一个应用)的精细化防护?  相信他的答案一定是:都要!  因为我们所处的是一个IT技术飞速发展,但同时也面临各种网络安全威胁的时代。  F5中国区首席技术官吴静涛将此归纳为中国市場的三种小趋势:  其一,由于5G的高宽带、高并发,导致企业客户需要考虑硬件 软件、DC 云服务的融合,多云服务、
摘 要演王元逵出兵泽潞的原因历来以杜牧的“仇恨说”为主。然而,一生从未踏足过河北且站在主战立场上的杜牧,对于成德与泽潞的仇恨难免有想象与夸饰的成分。通过对河朔藩镇关系网络的勾勒,我们不难发现藩镇之间因为仇恨而兴起的战争并不多。因为利益的驱使,“转寇雠为父子”的事件却是屡见于史乘。以杀戮田弘正而掌权的王廷凑,其权力合法性有着天然的缺陷。王元逵兴兵泽潞的动因,也应该置于王氏家族谋求权力合法性的延长线上