# 无服务器/函数工具

**40. Kubeless**

Kubeless是一款Kubernetes原生无服务器框架，能够在无需底层基础设施的前提下部署少量代码。Kubeless能够快速识别Kubernetes资源，并据此提供自动扩展、API路由、监控与故障排除等功能。Kubeless完全依赖于Kubernetes基元，因此Kubernetes用户也可以配合使用原生Kubernetes API服务器与API网管。

链接： [https://github.com/kubeless/kubeless](https://github.com/kubeless/kubeless)

使用成本：免费

**41. Fission**

Fission是一款针对Kubernetes的快速无服务器框架，专注于提升开发人员的生产力与性能水平。Fission能够运行于任何环境下的Kubernetes集群当中：笔记本电脑、任何公有云或私有数据中心。用户可使用Python、NodeJS、Go、C#或PHP编写函数，尔后再使用Fission将相关函数部署到Kubernetes集群。

链接： [https://fission.io/](https://fission.io/)

使用成本：免费

**42. Funktion**

长久以来，Kubernetes只有一种函数即服务（FaaS）实现方案，即Funktion。Funktion是一套专为Kubernetes设计的开源事件驱动型lambda格式编程模型。Funktion与frabric8平台紧密相连，因此用户可使用Funktion创建函数流以订阅超过200个事件源，从而调用相关函数——具体包括大部分数据库、消息传递系统、社交媒体、中间件以及协议。

链接： [https://github.com/funktionio/funktion](https://github.com/funktionio/funktion)

使用成本：免费

**43. IronFunction**

IronFunction是一款开源无服务器（简称FaaS）平台，其在任何环境中均能够运行。IronFunction由Golang语言编写而成，并可真正支持由任何编程语言编写的函数。因此，IronFunction的主要优势在于其能够支持AWS Lambda格式——借助IronFunction，用户可直接从Lambda中导入函数，并在任何环境中实现相关函数的运行。

链接： [https://github.com/iron-io/functions](https://github.com/iron-io/functions)

使用成本：免费

**44. OpenWhisk**

Apache OpenWhisk是一款由IBM与Adobe联合推出的强大的开源FaaS平台。OpenWhisk可在内部环境或云端实现部署。Apache OpenWhisk的设计初衷在于提供一套异步与松散耦合的执行环境，从而运行针对外部触发器的函数。OpenWhisk在Bluemix上已作为SaaS解决方案发布，当然您也可以在本地将其部署在基于Vagrant的虚拟机当中。

链接： [https://console.bluemix.net/openwhisk/](https://console.bluemix.net/openwhisk/)

使用成本：免费

**45. OpenFaaS**

OpenFaaS框架旨在管理Docker Swarm或Kubernetes上的无服务器函数，并借此广泛收集与分析各种指标。用户可对函数内部的任意进程进行封装与使用，且无需重复编码或其他路由操作。FaaS可收集Prometheus指标，这意味着其能够根据相关需求自动调整自身功能。FaaS原生支持基于网页的界面，因此用户可借此试用自己的函数。

链接： [https://github.com/openfaas/faas](https://github.com/openfaas/faas)

使用成本：免费

**46. Nuclio**

Nuclio是一个无服务器项目，旨在处理高性能事件与大量数据。Nuclio可在内部部署设备上作为独立库或虚拟机/Docker容器启动，此外，Nuclio还能够在Kubernetes中实现开箱即用。Nuclio能够以最高并行性与最低运营开销提供实时数据处理能力。用户可在playground页面试用Nuclio。

链接： [https://github.com/nuclio/nuclio](https://github.com/nuclio/nuclio)

使用成本：免费

**47. Virtual-Kubelet**

Virtual Kubelet是一款开源Kubernetes Kubelet实现方案，其可以kubelet形式运行以实现Kubernetes与其他API的对接。Virtual Kubelet适用于由ACI、Hyper.sh与AWS等提供支持的节点。此外，连接器具有可插拔结构，并且可直接使用Kubernetes基元，这也让整个构建方式更为简便。

链接： [https://github.com/virtual-kubelet/virtual-kubelet](https://github.com/virtual-kubelet/virtual-kubelet)

使用成本：免费

**48. Fnproject**

Fnproject是一个容器原生无服务器项目，支持所有编程语言并可在任何环境下运行。Fn由Go编写而成，因此其具有一定性能优势以及轻量级特性。Fnproject支持AWS Lambda格式，因此用户可导入Lambda函数并使用Fnproject启动相关函数。

链接： [http://fnproject.io/](http://fnproject.io/)

使用成本：免费
