目前大多数公司仍使用大量的服务器或ECS来构建、部署、维护自身的应用,不仅需要大量的精力与成本去搭建及维护环境、服务器、数据库、存储等,服务器的资源使用率也高低不齐,此后可能还要考虑弹性扩容、数据库维护及带宽等问题。
定义
Serverless 是一种基于微服务架构的构建和管理的完整流程,允许你在服务部署级别而不是服务器级别来管理你的应用部署,它与传统的架构的不同之处在于完全由第三方管理,由事件触发,存在于无状态、暂存计算容器内,它能做到访问时,调入相关资源开始运行,运行完成后,卸载所有开销,真正做到按需按次计费。这是云计算向纵深发展的产物。构建无服务器应用程序意味着开发者可以专注在产品代码上,而无需管理和操作云端或本地的服务器或运行时。Serverless真正做到了无需涉及基础设施的建设、自动构建、部署和启动服务。目前 阿里云 和 腾讯云 均已提供相关解决方案。
主要依赖
Function as a Service,简称为Faas,函数即服务。 服务商提供一个平台,允许客户编写及上传核心业务代码,交由平台完成部署、调度、流量分发、弹性伸缩等,而无需构建和维护通常与开发和启动应用程序相关的基础架构。Backend as a Service,简称为Baas,后端即服务。服务商为客户(开发者)提供整合云后端的服务,如提供对象存储COS,消息队列CMQ,云数据库CDB、TDSQL,云缓存CRedis、CMemcached,甚至到各种以 API 形式提供的服务如万象优图 CI,视频处理 VC。这些产品或服务,用户直接开通即可使用,无需考虑部署、备份、扩容、优化、安全等服务器或应用的维护和管理。