Serverless的优点和缺点

Serverless的优点和缺点

无服务器是一个生态系统:

核心理念如下:

  1. 后端尽可能少做
  2. 客户端将所有部分整合起来
  3. 静态文件通过快速内容分发网络获取
  4. 数据库确保数据一致性
  5. 尽可能多的工作在编译和部署阶段完成

无服务器架构的优势

无服务器的主要优点是不需要管理服务器。服务器成了别人的问题。

  • 节省时间:

    注于应用程序代码,无需再处理繁琐的维护任务。

    使用无服务器架构,你能节省原本用于管理服务器的时间。

  • 编程效率

    您能更高效地编写后端代码。

    更小、更自包含的代码(理想情况下是单一函数)带来清晰度和专注力。做好一件事并将其做到极致。

    专注度提升后,你将获得:

    • 更轻松的测试

    • 更快速的理解

    • 更短的开发周期

  • 通常更便宜

    无服务器架构则按执行次数和运行时长计费。无需预先配置大量机器以防流量激增

  • 可扩展性

    Google likes to call serverless architectures from prototype to prodution to planet-scale.

    谷歌喜欢将无服务器架构称为从原型到生产到全球规模。

无服务器架构的缺点

  • 低负载时延迟较高: 每个请求都要等待计算机从休眠状态唤醒

  • 有时成本高昂: 按使用量付费的定价方式在大量使用时成本高昂。如大量的请求或较长的运行时间,或者高流量应用

  • 供应商锁定

    原因: 在别人的基础设施上构建

  • 系统复杂性: 用系统的复杂性来换取应用代码的简洁性