Open source
Kubernetes-native
Serverless Framework



What is Fission?

Fission is a framework for serverless functions on Kubernetes.

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

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

Benefits

Focus on Code,
Not Plumbing

Fission lets developers run code functions easily, while automatingthe menial work of configuring Kubernetes micro-services conceptsbehind the scenes. Just write your code functions and Fission willmake it run on Kubernetes.

Portable: Run your Lambda-like service, anywhere

Fission is open source under the Apache license. Fission works on aKubernetes cluster anywhere: on your laptop, in any public cloud, orin a private data-center. Write your application with theflexibility of deploying it anywhere.

Extensible and
Customizable

Fission is extensible to any programming language (Python, NodeJS,Go, C#, PHP are supported today). It abstracts away containers bydefault, but you can build your own containers if you need to.

Features

Kubernetes Native

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

Fast Cold-Start

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

Declarative Application Specifications

Declarative specifications give the developer the capability todefine a function once and then deploy it anywhere. Fissionresources (functions, triggers etc.) can be checked into sourcecontrol, and the application can be recreated from them.

Administration & Operational Simplicity

Fission aims for operational simplicity by incorporating logsdirectly into the CLI, via integration with Fluentd. It alsointegrates with Prometheus for metrics tracking and dashboardvisibility.

Istio Service-mesh Integration

Fission integrates with Istio, which is an open platform to connect,manage and secure micro-services. With Istio, users also get theability to monitor function usage and trace request latency throughdashboards.

Wide Language Support

Fission is extensible to any programming language of your choice.Python, NodeJS, Go, C#, PHP are supported today, but you can buildyour own custom containers if you need to.

Function Autoscaling

Fission provides autoscaling for functions based on CPU usage. Inthe future, custom metrics will be also supported for scalingfunctions. You can set the initial and maximum CPU for a functionand target CPU at which autoscaling will be triggered.

Use Cases

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 careof the rest: deployment, routing, scalability, availability. UseKubernetes’ service discovery and networking to interoperate withother services, like Redis, Postgres, Etcd etc.



Easily Implement Webhooks

Webhooks are a popular way to integrate with third-party services.Slack provides webhooks that are triggered by certain words ormessages; GitHub provides webhooks triggered by events in Gitrepositories. Fission is a great place to implement webhooks: justwrite the code, map it to a URL, and point the webhook at that URL.



Write Kubernetes Event Handlers

By subscribing to Kubernetes watches, you can write custom automationfor your Kubernetes infrastructure. Fission’s integration withKubernetes watches allows you to monitor resources such as Pods andServices, and execute arbitrary functions when the watched set ofresources change.



What's New

FISSION DZONE REFCARD

New! Download theFission.io Refcard

Get started with Serverless on Kubernetes in 5 minutes! Learn howto set up Fission, its key concepts, how to create and invoke afunction, monitor its performance, and more.

BLOG

Fission PostgreSQL DatabaseSample

Learn how to use Fission functions with PostgreSQL database andperform basic operations on it.

BLOG

Next.js Application withFission

Learn how you can create a Next.js application with Fission.We create a Next.js blog in this tutorial.