读《Serverless,后端小程序的未来》

Posted 薛定谔的云

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了读《Serverless,后端小程序的未来》相关的知识,希望对你有一定的参考价值。

Serverless,后端小程序的未来

》这篇文章。仔细读过,当然我不了解作者的意图,但我觉得在方向上有偏差,故有此小文。


(文章很有逻辑性,文章链接如下:http://geek.csdn.net/news/detail/195964?from=timeline&isappinstalled=0)


1

Serverless,后端小程序的未来》概要

什么是Serverless

     BaaS和FaaS是Serverless应用的基本特征。

Serverless是BaaS,不是PaaS

     PaaS需要参与应用的生命周期管理,BaaS则仅仅提供应用依赖的第三方服务

FaaS是Serverless的核心

       FaaS运行的是后端代码而不是整个后端程序。代码通过事件触发。代码的生命周期很短。代码必须做到彻底无状态,两次调用间不能共享内存状态。水平扩展不再是需要担心的问题,FaaS会为每个事件和请求运行一份新的代码。应用的部署方式从上传、配置整个程序变成上传一份打包代码的文件(例如Jar文件或一个Zip文件)。

Serverless为我们带来了什么

     真正专注于核心业务,节省了大量开支。

Serverless不是银子弹,是后端小程序的未来

      无法用于高并发应用,无法常驻内存,运行的时间是受限,调用之间不能共享状态让编写复

杂程序变得极度困难。

Serverless不是传统的PaaS

      传统PaaS是以程序为粒度管理应用的生命周期,而Serverless是以函数粒度管理应用生命周期。

Serverless和微服务/Serverless和容器

       Serverless是一种软件设计架构,容器是软件架构的承载者。

Serverless对私有云有意义吗?

      对于私有云来说,现在将业务迁往Serverless架构还为时过早。


2

从vender角度描述

      云计算是一个应用+基础设施的系统。用户提供多样化的应用,或者市场公共服务,公有云服务商提供普惠的、有竞争力的基础设施。既然是普惠的基础设施,需要有通用特性而不是个性化特性,对其上的应用也会有一定的约束。而Serverless是一种提供基础设施的新模式,应该从公有云服务商的角度去描述。

     笔者理解,Serverless是一种提供managed IaaS的方式。在当前模式中,公有云服务商提供的是资源操作原子API,由用户决定如何编排资源。而managed IaaS的模式,用户只提供应用的binary,资源编排下沉到公有云服务商。

读《Serverless,后端小程序的未来》

飞行器按照轨道的要求运行


3

从GCP入手,云运营商做什么

      从对Serverless的投入来看,无疑Google的ALL-IN策略是最激进的。其通过Cloud Funtion提供FaaS,Firebase提供MaaS,将一票数据库实现归为DBaaS,共同组成了GCP的Serverless方案。其实从最早Google从PaaS GCE开始起步云计算,也可以看得出其思路,Serverless模型更契合其managed一切的思路。对于AWS来说,Serverless是一个与客户共赢的方案,是平台重要的组成部分。

读《Serverless,后端小程序的未来》


4

客户做什么

       Serverless模式对于客户,有直接的资源使用费降低的收益,也有免运维投入而产生的间接收益。是值得尝试对业务架构进行改造,以适应Serverless模式的事件触发、无状态、非常驻等特点。笔者认为,需要预先将所有的逻辑都展开是构建Serverless模式应用与传统模型应用最大的区别。这点与从使用CPU,切换到使用FPGA有可类比的地方。

读《Serverless,后端小程序的未来》

      下图是Google kubernets的简单顶层设计逻辑图。简洁的架构也是其在容器编排应用中领先的原因之一。kube-apiserver接受输入,各个controller按照逻辑更新etcd相应状态,kuberlet发现状态改变执行相应逻辑。从整体的设计来看,是一个趋向于Serverless的方案,当然实现上离Serverless还非常的遥远。但想象空间是足够的。


5

展望

      在Serverless的模式中,云计算提供商可以提供Managed IaaS服务,可以降低运营成本、提高资源利用率。对于客户可以降低资源使用量,免去运营费用。是一个双赢的方案,会有不错的进展。

       但笔者认为云计算是个系统,用户与ISV代表消费者,云计算提供商代表生产者,需要有足够的互动才会使系统平衡,成为一个健康运行的自治系统。当Serverless的模式深入到云中各个应用,客户与ISV不能足够的感知到基础设施的服务能力。如何才能产生足够数量、且有效的反馈,是个值得思考的问题。

以上是关于读《Serverless,后端小程序的未来》的主要内容,如果未能解决你的问题,请参考以下文章

后端架构的演进之路:Serverless 的诞生

Java后端小程序微信登录怎么写??

腾讯云微计算实践:从Serverless说起,谈谈边缘计算的未来

黄文俊:Serverless小程序后端技术分享

告别后端!阿里云小程序 Serverless 教你如何 30 分钟开发小程序!

研发的未来在哪里?Serverless 云开发来了!