聊云计算相关概念,IaaS、PaaS、SaaS三层划分是最常被提到的,用餐饮类比方便理解:IaaS相当于给你原材料和厨具,锅碗都需要自己准备;PaaS已经搭好灶台、备好调料,你只需要负责烹饪;SaaS是直接端上成品,拿起餐具就能食用。企业选型很少只选用单一层级,大多混合搭配。
IaaS处于底层,交付计算、存储、网络这类基础设施资源。拿到虚拟机之后,操作系统、业务服务、网络配置全部自行管理。优势是控制权充足,缺点是运维工作量不会减少。海外典型产品包含AWS EC2,配套S3对象存储、EBS块存储、VPC虚拟网络;微软Azure对应Virtual Machines、Blob Storage;谷歌云为Compute Engine、Cloud Storage。国内阿里云ECS、OSS、VPC,腾讯云CVM、COS、私有网络,华为云ECS、OBS,产品逻辑基本一致。这一层产品比拼机房覆盖、网络质量、定价与稳定性,厂商选择一般参考业务部署区域。

PaaS在上一层,操作系统、中间件、数据库、运行环境全部由平台托管,开发者只负责编写代码与部署。数据库是最普及的PaaS产品,AWS RDS、Azure SQL Database、阿里云RDS、腾讯云云数据库,开箱即用,备份、扩容、监控交由平台处理。应用托管同样属于PaaS范畴,Heroku、Google App Engine、阿里云Web应用托管、腾讯云云开发,上传代码即可运行,不用管理服务器。消息队列、API网关、日志服务也归类在PaaS。PaaS降低运维负担,但灵活性受限,如果平台不支持所用编程语言或框架,就要额外想办法适配。
SaaS最贴近普通使用者,浏览器或者App直接访问,不用关心底层运行架构。办公类产品Microsoft 365、Google Workspace、钉钉、飞书、企业微信都属于SaaS。CRM领域Salesforce是标杆,国内销售易、纷享销客同属这个赛道。金蝶、用友、Zendesk这类财务、人事、客服系统,也归SaaS。企业使用SaaS上线速度快,按用户数计费,不用维护运维团队;短板在于数据存储在服务商侧,自定义修改能力有限,深度集成容易出现卡点。
除三层基础模型,还有几类独立的云服务分类。FaaS函数计算,上传函数代码,收到请求才执行,无请求不产生费用。AWS Lambda、Azure Functions、Google Cloud Functions、阿里云函数计算、腾讯云云函数、华为云FunctionGraph都属于这类。适合事件驱动的轻量任务,图片压缩、消息推送、定时清理,不适合长时间持续运行的业务。CaaS容器即服务,托管Kubernetes是代表,AWS EKS、Azure AKS、Google GKE、阿里云ACK、腾讯云TKE。容器比虚拟机轻量化,启动速度快,适配微服务架构,但编排管理存在复杂度。DaaS数据即服务,将数据封装成API对外提供,天气、地图、金融数据都在此列,Google Maps API、高德开放平台就是典型。BaaS后端即服务,把登录、消息推送、存储等后端能力打包交付移动端开发者,Firebase、LeanCloud、腾讯云开发都具备这类能力。
按部署模式划分,公有云、私有云、混合云。公有云就是阿里云、腾讯云、AWS这类,资源池对外售卖,按量计费。私有云部署在企业自有机房,OpenStack、VMware、华为云Stack、阿里云专有云是常用方案,数据不出企业机房,但采购成本高,弹性不足。混合云打通两套环境,核心敏感数据存放私有云,弹性业务部署公有云,AWS Outposts、Azure Arc、阿里云混合云管平台提供相关能力。现在纯公有云或者纯私有云的企业越来越少,混合部署方案更加普遍。
选择层级和服务商,核心看团队希望承担多少运维工作。想要完全自主掌控、深度定制,优先IaaS。只想开发业务代码,不想管理服务器,PaaS和FaaS更合适。如果直接使用成品软件解决业务需求,SaaS是最优选择。很多团队实际架构是IaaS承载核心业务,PaaS托管数据库和中间件,SaaS处理办公协作,FaaS承接零散任务,混合使用体验更好。各大厂商产品线也在互相延伸,阿里云从ECS延伸至钉钉,AWS从EC2拓展到WorkMail,层级边界越来越模糊,按需组合即可。