极客视点
极客时间编辑部
极客时间编辑部
113243 人已学习
免费领取
课程目录
已完结/共 3766 讲
2020年09月 (90讲)
时长 05:33
2020年08月 (93讲)
2020年07月 (93讲)
时长 05:51
2020年06月 (90讲)
2020年05月 (93讲)
2020年04月 (90讲)
2020年03月 (92讲)
时长 04:14
2020年02月 (87讲)
2020年01月 (91讲)
时长 00:00
2019年12月 (93讲)
2019年11月 (89讲)
2019年10月 (92讲)
2019年09月 (90讲)
时长 00:00
2019年08月 (91讲)
2019年07月 (92讲)
时长 03:45
2019年06月 (90讲)
2019年05月 (99讲)
2019年04月 (114讲)
2019年03月 (122讲)
2019年02月 (102讲)
2019年01月 (104讲)
2018年12月 (98讲)
2018年11月 (105讲)
时长 01:23
2018年10月 (123讲)
时长 02:06
2018年09月 (119讲)
2018年08月 (123讲)
2018年07月 (124讲)
2018年06月 (119讲)
时长 02:11
2018年05月 (124讲)
时长 03:16
2018年04月 (120讲)
2018年03月 (124讲)
2018年02月 (112讲)
2018年01月 (124讲)
时长 02:30
时长 02:34
2017年12月 (124讲)
时长 03:09
2017年11月 (120讲)
2017年10月 (86讲)
时长 03:18
时长 03:31
时长 04:25
极客视点
15
15
1.0x
00:00/05:41
登录|注册

Serverless现状研究报告

讲述:丁婵大小:7.81M时长:05:41
现在“Serverless”可能是一个流行术语,但是它并非空洞地存在。AWS Lambda 推出还不到 5 年的时间,就已经被近一半使用 AWS 基础设施的公司所采用。近日,Datadog 站点在分析了数千家公司的 Serverless 使用情况后,发布了一份 Serverless 现状研究报告。InfoQ 中文站对该报告内容进行了编译。
该报告主要关注 AWS Lambda,它在 2020 年初是 Datadog 的用户群中最成熟和被广泛采用的 Serverless 平台。以下为报告重点内容。

一半的 AWS 用户已经采用了 Lambda

在 2020 年初,Lambda 已经不再是小众的技术。使用 AWS 的 Datadog 客户中有近一半已经采用了 Lambda。对于 AWS 的使用情况,Datadog 认为,如果一个公司在一个月内至少运行 5 个不同的 Lambda 函数或 5 个不同的 EC2 实例,那么该公司就在使用 AWS。Lambda 的采用率和使用情况表明 Lambda 并不局限于云原生的早期采用者和小众使用场景。相反,在采用 AWS 基础设施的各种各样的公司中, Serverless 函数得到了广泛的应用。

Lambda 在大型环境中更为普遍

令人意外的是,Lambda 的广泛采用并不是由更新、更小的公司所驱动的。相反, Lambda 的采用情况与公司基础设施环境的大小有着明显的相关性,无论环境指的是主服务器、容器,还是 Serverless 函数均是如此。在基础设施规模最大的那些公司中,超过四分之三的公司都采用了 Lambda。

使用容器的用户已经大面积采用 Lambda

在 AWS 中运行容器的公司特别中意于 Lambda。截至 2020 年 1 月,在 AWS 运行容器的组织中有近 80% 都采用了 Lambda。尽管 Serverless 函数和容器是两个非常不同的环境,但是它们似乎基于类似的原因而被众人所接受,比如为了简化运维而抽象出基础设施的关注点。在一些使用场景中,Lambda 和容器基础设施是直接连接的,但是更多的组织可能正在分别运行它们,以满足不同的需求。例如,某家公司可能在一个容器集群中运行其大部分的应用程序,同时将突发的、短期运行的任务(例如支付处理)转移到 Serverless 的函数中。

Amazon SQS、DynamoDB 与 Lambda 是绝配

在将函数连接至基础设施和应用程序组件时,Lambda 用户有大量可选的技术。当函数被触发时,它通常会将自己所产生的数据发送给消息队列,而消息队列可以将数据路由至其他的 Lambda 函数、基于服务器的应用程序或者云服务。消息队列能够让组织采用“仅为真正使用的内容服务”的 Serverless 模式。相对于调用其他的函数并一直等待响应(占用可计费的调用时间), Serverless 可以通过消息队列的方式进行异步调用。由于函数是临时的和无状态的,所以它们通常会对单独的持久化数据存储进行读写操作。
在与 Lambda 函数相同的请求中所调用或查询的服务里面,Amazon DynamoDB 名列前茅。键值和文档存储非常适合 Lambda 函数,因为它是一个托管的、可自动伸缩的数据存储,可以保证低延迟。在使用 Lambda 的场景中,数据存储方面另一个最流行的选择是 SQL 数据库(无论是 Amazon RDS 实例还是自管理数据库)和 Amazon S3。Amazon SQS(Simple Queue Service)是 Lambda 请求中消息队列的首选,其次是 Amazon Kinesis 和 Amazon SNS(Simple Notification Service)。SQS 在逻辑上非常适合 Serverless 架构:它易于搭建和扩展,成本相对较低,并且提供与 Lambda 的紧密集成。

Lambda 用户中,Node.js 和 Python 占据了主导地位

在 Lambda 用户可用的语言和框架中,Python 和 JavaScript(借助 Node.js)明显占据了主导地位。在当前所有已部署的 Lambda 中,有 47% 在运行 Python,另外还有 39% 在运行 Node.js 应用。Python 3 与 Python 2 的比例是 2 比 1(Python 2 在 2020 年 1 月正式结束了其生命)。

Lambda 函数运行时间的中位数是 800 毫秒

Lambda 函数运行时间的中位数约是 800 毫秒,这是在所有调用中取平均值得到的,但是延迟分布曲线的尾部很长。四分之一的 Lambda 函数平均执行时间超过 3 秒,12% 的函数执行时间超过 10 秒。一些 Lambda 函数的持续时间很长,这是值得注意的,因为 Serverless 的延迟不仅影响应用程序的性能,还会影响云计算的成本。Lambda 定价是基于计算时间的“GB-seconds”:分配给函数的内存 (详细信息如下图所示),并乘以其调用的持续时间。
除了上述 Serverless 现状研究报告的重点内容外,报告还显示,47% 的 Lambda 函数具有最小的内存分配,即 128 MB。每个 Lambda 函数都有一个可配置的超时设置,时间从 1 秒到 15 分钟不等,这是 Lambda 调用所允许的最长持续时间。大多数函数都使用了较短的超时:三分之二的 Lambda 函数超时配置为 60 秒或更少。
以上就是今天的内容,你还可以点击文末链接查看报告完整内容。
原文链接:
确认放弃笔记?
放弃后所记笔记将不保留。
新功能上线,你的历史笔记已初始化为私密笔记,是否一键批量公开?
批量公开的笔记不会为你同步至部落
公开
同步至部落
取消
完成
0/2000
荧光笔
直线
曲线
笔记
复制
AI
  • 深入了解
  • 翻译
    • 英语
    • 中文简体
    • 中文繁体
    • 法语
    • 德语
    • 日语
    • 韩语
    • 俄语
    • 西班牙语
    • 阿拉伯语
  • 解释
  • 总结
该免费文章来自《极客视点》,如需阅读全部文章,
请先领取课程
免费领取
登录 后留言

全部留言(1)

  • 最新
  • 精选
  • 小斧
    技术效率,运行效率是每行每业的目标。
收起评论
大纲
固定大纲
一半的 AWS 用户已经采用了 Lambda
Lambda 在大型环境中更为普遍
使用容器的用户已经大面积采用 Lambda
Amazon SQS、DynamoDB 与 Lambda 是绝配
Lambda 用户中,Node.js 和 Python 占据了主导地位
Lambda 函数运行时间的中位数是 800 毫秒
显示
设置
留言
1
收藏
34
沉浸
阅读
分享
手机端
快捷键
回顶部