Serverless比微服务拆分服务还要细
serverless是最近几年继微服务之后兴起的又一种非常流行的新型计算模式,它相对微服务来说是更加细粒度的服务架构模式,把用户所要执行的每个API操作进一步拆分。
换句话说,微服务包含了对某个资源的所有CURD操作,而Serverless则把针对资源的创建、读取、删除、更新等操作进一步拆分,每一个操作抽象为一个函数,Serverless是通过直接把这些函数暴露的形式进行发布,因此Serverless通常又称为函数计算服务(Function as Service, FaaS)。
Serverless可能是目前资源抽象级别最高的
从资源抽象上看,从最早的物理服务器开始,我们都在不断地抽象或者虚拟化服务器,而Serverless则更是抽象到了极致,它彻底屏蔽了底层硬件、操作系统甚至底层平台等技术细节
总而言之,毫不夸张地说Serverless比我们熟知的服务器、KVM、OpenStack、Kubernetes、微服务等提供了更高级的资源抽象能力。Serverless平台就像一个无限容量的超级计算机,只要把代码提交上去就能运行,不需要关心到底是运行在物理机、虚拟机还是容器。
当然Serverless并不意味着底层真的不需要服务器运行,而是平台屏蔽了后端基础资源和基础架构的维护,从实现上它依然可能运行在虚拟机、容器或者Kubernetes平台之上,只是用户不需要关心罢了,真正运行在哪个虚拟机上或者哪个Kubernetes集群其实都无所谓了。