2023 年边缘函数现状:全球分布式应用程序之年
今年早些时候,我们启动了第一版边缘函数现状调查,邀请开发者分享他们对边缘函数的经验和预测。在收到近千份回复后,我们已经关闭了调查,并很高兴发布报告。鉴于边缘函数是一项新兴技术,我们希望这份报告能提供对常见用例、挫折和未来趋势的见解。
请继续阅读我们的分析,或查看调查的完整结果。
没有参与今年的报告?在我们开放下次调查时获得通知。
边缘函数作为“粘合代码”
将 API 和数据库粘合在一起是最常见的用例,紧随其后的是身份验证和负载均衡
将 API 绑定在一起不仅是边缘函数的常见用例,也是无服务器函数的一般用例,因为创建和部署许多单用途函数作为微服务使开发团队更容易快速构建和发布。
身份验证是边缘函数的第二大用例,这在单一来源无服务器函数中可能并不常见,因为边缘函数的延迟很小。身份验证用户对于绝大多数应用程序来说至关重要,它需要高性能才能提供无缝的用户体验,而这正是边缘函数所擅长的。
随着边缘无服务器生态系统的不断发展,我们将看到更多针对边缘的特定用例的中间件,例如这个最小依赖身份验证解决方案。
更复杂的边缘函数需要状态
对于更复杂的用例,状态是最重要的需求
这是有道理的,因为持久性数据存储打开了全新类别的用例,例如在边缘托管整个 Web 应用程序。提到的具体技术包括 Workers KV、Workers D1 和 PlanetScale。
为了快速构建边缘有状态的应用程序,Deno KV 是一个全局分布式、零配置的 KV 存储,允许您使用一行代码连接到它,而无需复制和粘贴任何密钥。
边缘函数意味着更好的性能
大多数开发者依靠边缘函数来提高网站速度和性能,紧随其后的是节省成本
每毫秒的延迟都很重要,尤其是在电子商务、游戏、媒体网站等与真金白银相关的领域。可以理解的是,通过在边缘运行函数(更常见的是整个 Web 应用程序)来消除网络延迟带来的性能提升,对于开发者、他们的用户和他们的业务来说都是巨大的价值增值。
首字节时间 (TTFB) 不仅大幅降低,而且使用边缘原生全栈 Web 框架(例如Fresh),默认情况下不会向客户端发送任何 JavaScript,所有页面都由服务器端渲染,开发者可以构建获得完美 Pagespeed 得分的电子商务应用程序,并最大化收入。
大多数开发者难以进行调试、测试和可观察性
调试、测试和可观察性是开发者最常提到的挑战
调试边缘函数的挑战出现在两个方面:边缘函数提供商缺乏有用的日志记录和辅助工具,以及缺乏专注于边缘函数的第三方工具。目前,监控边缘函数要依赖于为服务器或虚拟专用机设计的工具,例如 New Relic、Splunk 或 Sentry。
虽然测试单个边缘函数或微服务很简单,但鉴于当前测试框架的局限性,验收、集成和 E2E 测试比较困难。为这些情况创建可靠的测试通常需要开发团队构建自定义测试解决方案。
边缘的全栈应用程序已成为现实
大多数受访开发者已经在边缘构建并部署了完整的 Web 应用程序
此外,超过一半的受访开发者认为,未来三年内,新的网站和应用程序将在边缘完全运行。我们同意,因为 Web 基础设施(从地下室的机器到云中的无服务器,再到边缘的无服务器)在历史上一直朝着提高用户性能的方向发展。
随着边缘无服务器计算的工具和生态系统的不断成熟,用例将从 CDN 代理、API 服务器和负载均衡器演变为全栈 SaaS、电子商务、Web 应用程序等,因为性能和用户体验得到了改善。
虽然构建全栈应用程序的许多方法通常将静态 JAMstack 与边缘函数结合使用以实现动态性,或者使用边缘原生框架(例如HonoJS 或 Fresh),但我们预计将出现更多针对全球分布式全栈 Web 应用程序的工具,例如这个为边缘设计的 SaaS 模板SaaSKit。
接下来是什么
感谢所有参与调查并通过贡献报告回馈无服务器社区的开发者。如果您希望在明年收到有关调查和报告的通知,请在这里订阅边缘函数现状时事通讯。
不要错过任何更新 - 在 Twitter 上关注我们。