初探Serverless

318 阅读2分钟

一、初识Serverless

1.1 serverless发展

随着云服务广度应用,serverless热度也在持续攀升 在中国,serverless热度居高不下,可以看出国人对其的追捧

1.2 Serverless概念

serverless = server + less,即少服务器,无服务器架构,功能即服务

用户只需要关注执行代码函数,上传至云服务即可,不用关注服务器硬件资源、托管服务、CI运维,按执行时长及资源消耗付费。

Amazon Lambda图示

腾讯云函数图示

Serverless 云产品主要有 Amazon Lambda、Google Cloud Function、Azure Function、AliCloud Function Compute。

二、云服务演进

  1. Bare Metal:用户购买物理裸机,配置环境,自建机房,自行运维
  2. IAAS(Infrastructure-as-a-Service):用户购买VM云主机,硬件和网络都交给云服务商管理
  3. Paas(Platform-as-a-Service) 和 CaaS(Container-as-a-Service):用户使用平台基础软件服务Database、短信消息等开发应用,在使用容器镜像构建和部署,最后托管给平台管理
  4. Serverless:FaaS(Function-as-a-Service)函数即服务,用户将执行函数部署在云平台,在配置好网关路由,即可访问;BaaS(Backend-as-a-Service)后端即服务,消息队列、对象存储、日志服务等

三、Serverless执行流程

serverless由两部分组成:FAAS与BAAS serverless执行流程: 案例演示:API接口转发 (基于腾讯云服务,API网关和云函数) 腾讯云函数范例: 简单云配置网关后,即可访问:

四、Serverless优缺点

优点

  1. 无需管理服务器,低运维成本:云计算资源、All on Cloud
  2. 按需付费:百毫秒级计算计量
  3. 资源弹性伸缩:方便扩容、提前应对峰值流量
  4. 安全可靠:云厂商保障SLA、代码加密托管、抵御网络攻击
  5. 事件触发执行:云资源时间触发、HTTP请求触发

缺点

  1. 云厂商绑定,迁移成本高
  2. 冷启动时间开销:容器和环境启动,需要另外时间开销
  3. 调试与测试成本高:本地与测试环境差异性

五、应用场景

  1. Web后端服务
  2. 大数据分析处理
  3. 集成多产品
  4. IoT物联网后端服务
  5. 实时数据分析

参考资料:

《无服务器计算和应用场景》阿里云

《入门 Serverless:如何实现 Hello World?》企鹅

《腾讯云-云函数》企鹅

《写给前端工程师的serverless入门》政采云