问题:Serverless架构对SAP应用有何影响?可以把SAP的服务变成Serverless的吗?
这个问题很有趣。
Serverless的优点:基于Function-as-Service(FaaS)的Serverless与普通云计算最大的区别在于云服务器需要一直运行,而FaaS是按需计算。Serverless能够降低开发成本,实现项目快速部署和上线,支持动态扩容。
Serverless的缺点:只有无状态应用才能发挥出Serverless架构的全部优点,而SAP多数应用都以transaction processing业务为主,是一种stateful的应用,如果要将这些应用改造成无状态应用,并不是一件容易的事情。正因为这个问题很难解决,才产生了基于BOPF的Fiori stateful编程模型,实际上绕开了将SAP应用改造成无状态应用这个难题。另外,Serverless应用在用户请求到来时才运行,也就是说当没有用户请求到来时,Serverless应用会进入休眠状态,而从休眠状态进入到运行状态,需要一个冷启动时间,所以,如果一个应用需要长时间不间断运行,处理大量用户请求,那么这种应用并不适合Serverless架构——这种应用运行在传统的云服务器上更加合适。
我以后工作的方向是SAP Commerce Cloud,从以上的分析来看,Commerce Cloud显然不适用于Serverless架构。至于数字化核心S/4HANA,我个人更是没意识到如果将其Serverless化会有啥收益。我个人认为Serverless的技术给SAP partner带来的value要远远大于SAP标准产品。