简介:搭建一个aPaaS平台是需要很长时间的,当然也可以基于一些公有云产品的Serverless方案实现现有系统的灵活性与扩展性,从而实现针对于不同客户的定制。
写在前面
在SaaS领域Salesforce是佼佼者,其CRM的概念已经扩展到了Marketing、Sales、Service等领域。那么Salesforce靠什么变成了这三个行业的解决方案呢?得益于Salesforce强大的aPaaS平台。
ISV、内部实施、客户均可以从自己的维度基于aPaaS平台构建自己的行业,实现业务定制,甚至是行业定制。因为在此之前只有在Sales方向有专门的SaaS产品,而Marketing和Service都是由自己的ISV在各自行业的解决方案。所以Salesforce已经从一家SaaS公司变成了一家aPaaS平台公司了。
搭建一个aPaaS平台是需要很长时间的,当然也可以基于一些公有云产品的Serverless方案实现现有系统的灵活性与扩展性,从而实现针对于不同客户的定制。
什么是Serverless
Serverless由两部分组成,Server和Less。
前者可以理解为其解决方案范围处在服务端;后者可以译为少量的;组合起来就是较少服务端干预的服务端解决方案。
与Serverless相对的是Serverfull,比较下对应的概念可能更便于理解。
在Serverfull时代,研发交付流程一般有三个角色:RD,PM,QA。
RD根据PM的PRD进行功能开发,交付到QA进行测试,测试完成之后发布到服务器。由运维人员规划服务器规格、数量、机房部署、节点扩缩容等,这种更多由人力处理的时代就是Serverfull时代。
之后进入了DevOps时代。这个时代运维自己开发一套运维控制台,可以让研发同学在控制台上自己进行服务观测、数据查询、运维处理等,运维同学的工作轻松了不少,这个阶段主要释放了运维同学的人力。
而到了Serverless时代,这套运维控制台能力越来越丰富,可以实现按配置的自动扩缩容、性能监控、DevOps流水线等,同时侵入到研发流程侧,比如自动发布流水线、编译打包、代码质量监测、灰度发布、弹性扩缩等流程基本不需要人力处理了,这就是Serverless时代。
Serverless怎么用
相信你有过这样的经历,在一个Web界面上,左侧写代码,右侧展示执行效果。
写的是代码块,代码数量不会特别大;代码运行速度快;支持多种编程语言;可以支持不可预计的流量洪峰冲击。以阿里云解决方案看下如何支持多语言架构:
抽象来说,前端只需要将代码片段和编程语言的标识传给Server端即可,等待响应结果。Server端可以针对于不同编程语言进行runtime分类、预处理等工作。
Serverless怎么做
很多人把Serverless看做是FC(function