search menu icon-carat-right cmu-wordmark

Function Composition in a Serverless World

May 2019 Presentation
Josh Hurt (Platform9 Systems)

This presentation explores four options for composing functions, along with a deep dive into workflows, using examples and live demos for each approach.

Publisher:

Software Engineering Institute

Watch

Abstract

As serverless applications grow more complex, function composition, or the ability for functions to call each other, becomes important. The talk explores four available options for composing functions, along with a deep dive into workflows, using examples and live demos for each approach. The presenter compares them with regard to expressiveness, performance, and fault tolerance, as well as other concerns, such as the ease of doing upgrades and monitoring the overall application’s performance.

Topics include

  • coordinating functions: Manage the execution of other functions by calling them directly
  • event-driven composition: Uses functions emitting and reacting to events on message queue topics
  • workflows: Introduce a mechanism for expressing a graph of function interactions and having a new runtime to manage the execution of these functions
  • compiling functions: Merge functions into more complex functions by combining them on a source-code level