Uploaded image for project: 'Serverless logic'
  1. Serverless logic
  2. SRVLOGIC-21

[use case] Orchestration-based SAGA pattern

XMLWordPrintable

    • Icon: Story Story
    • Resolution: Done
    • Icon: Critical Critical
    • 1.24.0
    • None
    • serverless-workflow
    • None
    • False
    • None
    • False
    • 2022 Week 32-34 (from Aug 8)

      Motivation

      The Saga design pattern is a way to manage data consistency across microservices in distributed transaction scenarios. A saga is a sequence of transactions that updates each service and publishes a message or event to trigger the next transaction step. If a step fails, the saga executes compensating transactions that counteract the preceding transactions.

      Goal

      Enable orchestration-based SAGA pattern in Serverless workflows

      Scenarios

      As a developer, I need to ensure data consistency in a distributed system without tight coupling

      As a developer, I need to compensate if one of the operations fails.

      As a developer, I need to implement transactions that span services so that the application maintains data consistency without using distributed transactions.

      Example: https://github.com/kiegroup/kogito-examples/tree/stable/kogito-quarkus-examples/serverless-workflow-saga-quarkus 

      Example: https://github.com/Azure-Samples/saga-orchestration-serverless 

      Expected outcomes

      The orchestrator executes saga requests, stores and interprets the states of each task, and handles failure recovery with compensating transactions.

              tdolphin-1 Tiago Dolphine (Inactive)
              ibek1@redhat.com Ivo Bek
              Votes:
              0 Vote for this issue
              Watchers:
              2 Start watching this issue

                Created:
                Updated:
                Resolved: