Fission: Serverless functions for Kubernetes

Fission

Serverless Functions for Kubernetes

Star

Fission is a framework for serverless functions on Kubernetes.

Write short lived functions in any language, and map them to HTTP requests (or other event triggers).

Deploy functions instantly with one command. There are no containers to build, and no Docker registries to manage.

$ cat hello.js
module.exports = function(context, callback) {
    callback(200, "Hello, world!\n");
}

$ fission function create --name hello --env nodejs --code hello.js

$ fission route add --function hello --url /hello

$ curl http://router.fission/hello
Hello, world!

Extensible

Fission is extensible to any programming language (out of the box, it comes with Python and NodeJS support for now).

It abstracts away containers by default, but you can build your own containers if you need to.

Fast

Fission maintains a pool of containers so your functions have very low cold-start latencies, typically ~100msec.

Everywhere

Fission is open source under the Apache License. It works on a Kubernetes cluster anywhere: in your private datacenter, in a public cloud, or on your laptop.

Build Serverless API Backends

Create API backends for web and mobile apps without managing servers. Just write functions, and map them to HTTP routes. Fission takes care of the rest: deployment, routing, scalability, availability. Use Kubernetes' service discovery and networking to interoperate with other services, like memcached, Redis, Postgres, etc.

Easily implement Webhooks

Webhooks are a popular way to integrate with third-party services. Slack provides webhooks that are triggered by certain words or messages; Github provides webhooks triggered by events in Git repositories. Fission is a great place to implement webhooks: just write the code, map it to a URL, and point the webhook at that URL.

Write Kubernetes Event Handlers

With an upcoming feature to subscribe to Kubernetes events, you can write custom automation for your Kubernetes infrastructure. Functions can subscribe to Kubernetes events; they'll be called with the event and a handle to the Kubernetes API.

Learn More

Fission is an open source project in early alpha by Platform9 Systems. Learn more about Fission on our Github project page:

Github Project Page @fissionio on Twitter