e2tox / blog

技术博客,点开Issues查看。看我心情,不定期更新。
28 stars 0 forks source link

无服务器计算: 谈谈影响企业落地无服务器计算障碍的应对方案 #4

Open e2tox opened 5 years ago

e2tox commented 5 years ago

1_fq-njv3nwhqiorxn9pmmvg

非无服务器计算的最大痛点

传统应用程序一般的流程是:1.采购服务器。2.部署系统。3.用户增加。4.达到上限后扩容。但是从采购服务器到达到硬件处理能力上限是有时间的,而且一旦达到上限,系统必须扩容。所以从上面的图可以看出,当系统不在满负荷状态下运行,其多余的硬件资源都是被浪费掉了。也就是说,系统只有0个用户和100个用户,都必须支付同样的服务器费用。

无服务器计算解决了什么问题?

无服务器计算因为是按照请求数计费,因此是少用少花钱,不用不花钱。相对于服务器计算,可以就更低的起步价格,并且在遇到爆款的时候,系统会自动扩容来满足需要。

企业在无服务器转型中遇到的困难

  1. 从服务环境来说,在一些不能使用云服务器的应用来说需要购买本地FaaS服务器,因此违背了不用不花钱的原则,并没有发挥出无服务器计算的优势。
  2. 从系统架构来说,很多传统应用程序是基于内存状态的,而在无服务器环境下,内存状态是不可靠的,必须使用外部存储来存放数据,因此对应用程序的开发提出了更高的要求。
  3. 从编程框架来说,目前各大云服务商提供的函数式计算接口均不统一,后期要更换成本极高,因此企业无从下手,不知道选用那一个云服务商的无服务器开发接口。
  4. 由于无服务器函数的特殊性,在本地调试时有巨大障碍,因此开发无服务器应用的过程对开发人员来说非常不友好

应对方案

  1. 选用轻量的FaaS平台,最大限度减小对硬件的需求
  2. 开发不基于内存状态的应用
  3. 使用统一标准化的的无服务器开发框架
  4. 使用可以本地调试的无服务器开发框架

对以上问题都进行考虑之后就可以针对无服务器系统设计和开发了,祝大家编程愉快

利益相关声明:我是无服务器开发框架 AgentFramework 的作者