7大无服务器计算开源平台
无服务器计算正在改变传统的软件开发。这些开源平台将帮助你入门。
关于无服务器的讨论越来越多。首先,让我们澄清一下这个概念,以及与之相关的概念,例如无服务器计算和无服务器平台。
无服务器通常与术语FaaS(功能即服务)互换使用。但无服务器并不意味着没有服务器。事实上,有许多服务器,由公有云供应商提供部署,运行和管理应用程序的服务器。
无服务器计算是一个新兴的类别,代表了开发人员构建和交付软件系统的方式的转变。从代码中抽象出应用程序基础结构可以大大简化开发过程,同时引入新的成本和效率优势。我相信无服务器计算和FaaS将在帮助定义下一个企业IT时代以及云原生服务和混合云方面发挥重要作用。
无服务器平台提供的API允许用户运行代码函数(也称为操作)并返回每个函数的结果。无服务器平台还提供HTTPS端点,以允许开发人员检索功能结果。这些端点可以用作其他功能的输入,从而提供相关功能的序列(或链接)。
在大多数无服务器平台上,用户在执行之前部署(或创建)函数。然后,无服务器平台具有在被告知时执行功能所需的所有代码。用户可以通过命令手动调用无服务器功能的执行,或者可以由事件源触发,该事件源被配置为响应于诸如计划任务警报,文件上传或许多其他事件来激活该功能。
Apache OpenWhisk是一个无服务器的开源云平台,允许你执行代码以响应任何规模的事件。它是用Scala语言编写的。该框架处理来自HTTP请求等触发器的输入,然后在JavaScript或Swift上触发一段代码。
Fission是一个无服务器计算框架,使开发人员能够使用Kubernetes构建功能。它允许开发人员以任何编程语言编写短期函数,并使用任何事件触发器(例如HTTP请求)映射它们。
IronFunctions是一个无服务器计算框架,通过集成其现有服务和拥抱Docker,提供一个有凝聚力的微服务平台。开发人员用Go语言编写函数。
Fn Project是一个开源的容器原生无服务器平台,可以在任何云或内部部署的任何地方运行。它易于使用,支持每种编程语言,并且具有可扩展性和高性能。
OpenLambda是一个Apache许可的无服务器计算项目,用Go编写,基于Linux容器。OpenLambda的主要目标是探索无服务器计算的新方法。
Kubeless是一个Kubernetes原生无服务器框架,可让你部署少量代码,而无需担心底层基础架构。它利用Kubernetes资源提供自动扩展,API路由,监控,故障排除等。
OpenFaas是一个使用Docker和Kubernetes构建无服务器功能的框架,何进程都可以打包为一个函数,使你可以使用一系列Web事件而无需重复的样板编程。