- Notifications
You must be signed in to change notification settings - Fork0
Fast and Simple Serverless Functions for Kubernetes
License
scott-rc/fission
Folders and files
Name | Name | Last commit message | Last commit date | |
---|---|---|---|---|
Repository files navigation
Fission is a fast serverless framework for Kubernetes with a focus ondeveloper productivity and high performance.
Fission operates onjust the code: Docker and Kubernetes areabstracted away under normal operation, though you can use both toextend Fission if you want to.
Fission is extensible to any language; the core is written in Go, andlanguage-specific parts are isolated in something calledenvironments (more below). Fission currently supports NodeJS, Python, Ruby, Go,PHP, Bash, and any Linux executable, with more languages coming soon.
Fission maintains a pool of "warm" containers that each contain asmall dynamic loader. When a function is first called,i.e. "cold-started", a running container is chosen and the function isloaded. This pool is what makes Fission fast: cold-start latenciesare typically about 100msec.
We're built on Kubernetes because we think any non-trivial app willuse a combination of serverless functions and more conventionalmicroservices, and Kubernetes is a great framework to bring thesetogether seamlessly.
Building on Kubernetes also means that anything you do for operationson your Kubernetes cluster — such as monitoring or logaggregation — also helps with ops on your Fission deployment.
# Add the stock NodeJS env to your Fission deployment $ fission env create --name nodejs --image fission/node-env# Create a function with a javascript one-liner that prints "hello world" $ fissionfunctioncreate --name hello --env nodejs --code https://raw.githubusercontent.com/fission/examples/master/nodejs/hello.js# Run the function. This takes about 100msec the first time. $ fissionfunctiontest --name hello Hello, world!
- UnderstandFission Concepts.
- See theinstallation guide for installing and running Fission.
- You can learn more about Fission and get started fromFission Docs.
- To see Fission in action, check out theFission Examples Repo.
- See thetroubleshooting guide for debugging your functions and Fission installation.
Check out thecontributing guide.
- Fareye
- Apple
- iQuanti
- A large telecom CSP
- Gadget
- CinnamonAI
- Armo
- The Social Audience
- KubeML
- Unilever
- BD
- Biofourmis
- Babylon
The following companies, organizations, and individuals support Fission's ongoing maintenance and development. If you are using/contributing to Fission, we would be happy to list you here, please raise a Pull request.
Fission is licensed under the Apache License 2.0 - see theLICENSE file for details