Serverless for the
Event-driven processing with Fission, NATS, and Kubernetes
● Easy lightweight services on Kubernetes
● Fast cold-starts using pools of ready containers
● Lots of languages supported (JS, Python, Go, Ruby, and lots more)
● Invoke functions using various triggers
○ HTTP for synchronous invocations
Fission and NATS
● Fission supports NATS
● Reliable Async Function
invocation using NATS
● Request / Response
Event-driven Function Systems
● Chain together functions
using channels managed by
a single NATS-Streaming
● This lets you compose
functions together in
Ops: Difficult in event driven systems
● Monitoring and Performance?
○ How can you tell how long a whole “workflow” takes?
○ Upgrading without disruption in a complex system
○ What are the compatibility constraints?
● Cancellation, Restarts, Tracing, etc.
Workflows: “Managed” event driven systems
● Create “flowcharts” of function
● Specify dataflow and control flow
● Workflow engine abstracts away communication