Skip to content

Instantly share code, notes, and snippets.

@johnewart
Last active October 28, 2022 19:43
Show Gist options
  • Save johnewart/80ceb3e60254437a9a06813316964054 to your computer and use it in GitHub Desktop.
Save johnewart/80ceb3e60254437a9a06813316964054 to your computer and use it in GitHub Desktop.
Week of 10-28-2022.md

Dapr Workflow Status Report

Week of 10-28-2022 -- To 1.10 and beyond!

TL;DR

Things are making progress, no serious concerns about being able to introduce workflows into the Dapr 1.10 release.

🌲Actor Improvements

  • Design review for actor system improvements is underway, as is initial work on additional performance and correctness tests

🌲Workflow Engine

  • Skeleton code for the workflow engine has been added to a feature branch and is actively being worked on

🌲 SDK Support

  • .NET SDK work has been started

Documentation

  • Has not been started (yet) -- hence the warning sign

Overview of work items

Actor System Improvements

As a part of building a scalable workflow engine we are looking to improve the actor system in Dapr; specifically making changes to the timer and reminder system that are critical for ensuring the completion of workflows. As part of this we are paying particular attention to adding tests in Dapr around the the correctness of actors (including timers and reminders), as well as the performance.

Workflow Engine

At the heart of the workflow system is the workflow engine itself, this is responsible for creating timers and reminders and supervising workflows. This is what will power the execution of workflows themselves. This has two parts, the workflow building block that developers can interact with, and the engine itself.

SDK Support

In order to be used by developers, we are adding support to Dapr SDKs as quickly as possible, beginning with .NET.

Documentation

Documentation is a core part of any new feature and so we need to ensure that we have adequate documentation (in dapr/docs) as well as quickstarts and example code for developers to use.

Progress Updates

  • @amulyavarote: .NET SDK WIP
  • @cgillum: Did some related work on the golang Durable Task SDK / .NET SDK for Durable Tasks
  • @johnewart: Opened a review for moving timer and reminder functionality out of daprd and into the control plane; low friction so far, assuming we are okay with the design work will start next week
  • @mcandeia: Looking at an improved testing framework for actors to test performance and correctness of existing actors functionality
  • @ryanlettieri: Working on getting the workflow building block (in components-contrib)
  • @tmacam: Just joined, getting ramped up - welcome! 👋

Contributors

  • Amulya Varote (@amulyavarote)
  • Chris Gillum (@cgillum)
  • John Ewart (@johnewart)
  • Marcos Candeia (@mcandeia)
  • Ryan Lettieri (@ryanlettieri)
  • Tiago Alves Macambira (@tmacam)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment