单体回归?亚马逊放弃用于视频监控的微服务

亚马逊Prime Video工程团队的一篇博客文章搅乱了云原生计算社区,他们认为,至少在视频监控的情况下,单体架构比微服务和无服务器主导的方法产生了更高的性能。

对于一代因微服务的优越性而成长起来的工程师和架构师来说,这种断言确实令人震惊。在微服务架构中,应用程序被分解为单独的组件,然后可以独立地进行操作和扩展。

分析师Donnie Berkholz最近创办了自己的行业分析公司Platify,他写道:“这篇帖子对亚马逊来说绝对尴尬。这显示其内部完全无法建立协调或沟通。”

Ruby on Rails创始人兼Basecamp联合创始人David Heinemeier Hansson在一篇博客文章中表示:“这个故事的独特之处在于,亚马逊是面向服务架构的最初代表。现在,所有这些理论的真实结果终于出来了,很明显,在实践中,微服务可能是不必要地使系统复杂化的最大诱惑。而无服务器只会让情况变得更糟。”

在原帖中,亚马逊Prime高级软件开发工程师Marcin Kolny解释了将视频流转移到单体架构是如何将成本降低90%的。事实证明,来自AWS的组件阻碍了可扩展性,并导致成本飙升。

Prime Video的视频质量分析(VQA)团队启动了这项工作。任务是监控Prime向客户提供的数千个视频流。最初,这项工作是由一组分布式组件完成的,这些组件由AWS Step Functions(一种无服务器编排服务,AWS Lambda无服务器服务)编排。

f4b82c671d51575f28b4b104c6184054.jpeg

理论上,无服务器的使用将允许团队独立扩展每个服务。然而,事实证明,至少就团队如何实现组件而言,他们达到了仅为预期负载5%的严格扩展限制。由于需要跨多个组件发送数据,因此扩大规模以监控数千个视频流的成本也将过于昂贵。

最初,团队试图优化单个组件,但这并没有带来显著的改进。因此,团队将所有组件转移到一个进程中,将它们托管在亚马逊弹性计算云(Amazon EC2)和亚马逊弹性容器服务(Amazon ECS)上。

42aafd3371b95c8a20df403f9097e869.jpeg

关键点

Kolny谨慎地提到,视频质量团队做出的架构决策可能不会在所有情况下都有效。他写道:“微服务和无服务器组件是可以大规模工作的工具,但是否比单体更好必须根据具体情况来决定。”

公平地说,在过去的十年里,该行业一直在努力抑制微服务的热情,强调它只在某些情况下是好的。

Hansson写道:“与许多好的想法一样,这种模式一旦在其原始上下文之外被采用,就会变得有毒,一旦被推入单个应用程序架构的内部,就会造成严重破坏。在很多方面,微服务是一种僵尸架构。另一种有传染性的菌株,它就是不肯消亡。”

IT世界是周期性的,一种被嘲笑为无可救药的过时趋势一年后可能会成为新的热点。当然,在过去的十年里,微服务占据了主导地位,我们听到了不止一个关于“单体是下一件大事”的笑话。现在,这个笑话可能真的会实现。

原文链接:

https://thenewstack.io/return-of-the-monolith-amazon-dumps-microservices-for-video-monitoring/

581937388bd924c7dfa798b178ea9497.jpeg

306eea307f685dfc0013687386955cab.jpeg

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值