Skip to main content

İş Akışı Düzenleyicisi (Workflow Orchestrator)

Sistem Analizi

İşlem (Compute)PRODUCTION

Normal Davranış

Geliştiriciler iş akışlarını kodda durum makineleri veya Yönlendirilmiş Asiklik Grafikler (Directed Acyclic Graphs - DAG'ler) olarak tanımlar. İş akışı orkestratörü (workflow orchestrator), yürütmeyi dağıtılmış işçi (worker) kuyruklarına göndermeden önce dayanıklı bir işlem günlüğüne (durable transaction journal) değişmez (immutable) bir olay kaydı yazarak her bir adımı (etkinliği) yürütür. Yürütme sırasında geçici bir ağ aksaklığı (network glitch) veya hizmetin yeniden başlatılması (service restart) meydana gelirse, orkestratör hatayı algılar, daha önce tamamlanmış işleri tekrarlamadan (idempotans sağlayarak - guaranteeing idempotency) ilgili adımı kalıcı olay günlüğünden (persisted event log) aynen yeniden yürütür ve iş hedefine ulaşılana kadar yürütmeye devam eder.

Çöküş Davranışı

Geliştiriciler deterministik olmayan (non-deterministic) mantık uyguladıklarında veya telafi rutinlerini (compensation routines) yanlış yapılandırdıklarında iş akışı motorları (workflow engines) başarısız olur. Bir iş akışı tanımı, üretim ortamında geriye dönük uyumlu sürüm dallanması (backward-compatible version branching) olmadan (örn. adımları yeniden sıralamak, rastgele sayı üreteçleri eklemek veya doğrudan sistem saatini okumak) değiştirilirse, geçmiş durumu yeniden oynatma (historical state replay), sunucu kurtarma (server recovery) sırasında deterministik olmayan yürütme hatalarıyla (non-deterministic execution errors) çöker. Çok adımlı (multi-step) hatalarda, telafi edici işlemler (Saga'lar) kesinlikle idempotent değilse veya işlenmemiş aşağı akış (downstream) hataları nedeniyle başarısız olursa, iş akışı ödemelerin alındığı ancak siparişlerin asla yerine getirilmediği tutarsız bir bölünmüş beyin (split-brain) durumuna girer.

İş Sonuçları

İş akışı (workflow) etkinliklerindeki (activities) deterministik olmayan yürütme (non-deterministic execution), olay kaynağı oluşturma günlüğünü (event sourcing journal) bozar; bir yeniden oynatma (replay) sırasında durum makinesi (state machine) kalıcı geçmişinden (persisted history) sapar, iş akışı yürütmesini kalıcı olarak bloke eder ve sıkışmış iş süreçlerini çözmek için manuel, hataya açık veritabanı müdahaleleri (interventions) gerektirir.

Görsel Tezahür

"Bir iş akışı yürütmesinin 'Askıya Alındı' (Suspended) veya 'Başarısız' (Failed) durumunda sıkışıp kalması ve 'deterministik olmayan iş akışı tanımı geçmiş uyuşmazlığı' (non-deterministic workflow definition history mismatch) hakkında şikayet eden şifreli bir hata mesajı vermesi."

Satirical Behavior

"A robust system designed to guarantee task completion that instead perfectly preserves the exact moment your code failed so it can fail the exact same way forever."

Bilinen İsimler

Business ProcessOrchestrationState MachineSaga

Teknik Terminoloji

business process orchestrationworkflow enginestate transitionssaga patterncompensating transactionidempotencyevent choreographydirected acyclic graphDAGstep functions

Hata Göstergeleri

stuck statezombie workflowrace conditionunhandled exceptioninfinite loop

Sistem Mimarisi

Click or hover to interact

Kullanan Karakterler

FAQ

Normalde nasıl davranır?

Geliştiriciler iş akışlarını kodda durum makineleri veya Yönlendirilmiş Asiklik Grafikler (Directed Acyclic Graphs - DAG'ler) olarak tanımlar. İş akışı orkestratörü (workflow orchestrator), yürütmeyi dağıtılmış işçi (worker) kuyruklarına göndermeden önce dayanıklı bir işlem günlüğüne (durable transaction journal) değişmez (immutable) bir olay kaydı yazarak her bir adımı (etkinliği) yürütür. Yürütme sırasında geçici bir ağ aksaklığı (network glitch) veya hizmetin yeniden başlatılması (service restart) meydana gelirse, orkestratör hatayı algılar, daha önce tamamlanmış işleri tekrarlamadan (idempotans sağlayarak - guaranteeing idempotency) ilgili adımı kalıcı olay günlüğünden (persisted event log) aynen yeniden yürütür ve iş hedefine ulaşılana kadar yürütmeye devam eder.

Nasıl çöker?

Geliştiriciler deterministik olmayan (non-deterministic) mantık uyguladıklarında veya telafi rutinlerini (compensation routines) yanlış yapılandırdıklarında iş akışı motorları (workflow engines) başarısız olur. Bir iş akışı tanımı, üretim ortamında geriye dönük uyumlu sürüm dallanması (backward-compatible version branching) olmadan (örn. adımları yeniden sıralamak, rastgele sayı üreteçleri eklemek veya doğrudan sistem saatini okumak) değiştirilirse, geçmiş durumu yeniden oynatma (historical state replay), sunucu kurtarma (server recovery) sırasında deterministik olmayan yürütme hatalarıyla (non-deterministic execution errors) çöker. Çok adımlı (multi-step) hatalarda, telafi edici işlemler (Saga'lar) kesinlikle idempotent değilse veya işlenmemiş aşağı akış (downstream) hataları nedeniyle başarısız olursa, iş akışı ödemelerin alındığı ancak siparişlerin asla yerine getirilmediği tutarsız bir bölünmüş beyin (split-brain) durumuna girer.

İş sonuçları nelerdir?

İş akışı (workflow) etkinliklerindeki (activities) deterministik olmayan yürütme (non-deterministic execution), olay kaynağı oluşturma günlüğünü (event sourcing journal) bozar; bir yeniden oynatma (replay) sırasında durum makinesi (state machine) kalıcı geçmişinden (persisted history) sapar, iş akışı yürütmesini kalıcı olarak bloke eder ve sıkışmış iş süreçlerini çözmek için manuel, hataya açık veritabanı müdahaleleri (interventions) gerektirir.

What is a Workflow Orchestrator and how does durable execution differ from simple script execution?

A Workflow Orchestrator (like Temporal or Cadence) tracks every step of a business process in an append-only event journal. If the host machine crashes, network fails, or processes restart, the orchestrator reconstructs exact execution state from logs and resumes from the point of failure without losing data or repeating already completed steps.

Why must workflow definition code be strictly deterministic, and what happens when non-determinism is introduced?

Workflow engines reconstruct state during recovery by replaying stored event histories through the workflow code. If the code contains non-deterministic operations (e.g., Date.now(), Math.random(), or unversioned step reordering), the replayed execution path diverges from the recorded history, causing immediate engine replay crashes and stranding active workflows.

AI özeti

Workflow Orchestrator is a COMPUTE system in TinyCTO.tv. Developers define workflows as state machines or Directed Acyclic Graphs (DAGs) in code. The workflow orchestrator executes each step (activity) by writing an immutable event record to a durable transaction journal before dispatching execution to distributed worker queues. If a transient network glitch or service restart occurs midway through execution, the orchestrator detects the failure, re-executes the exact step from the persisted event log without duplicating prior completed work (guaranteeing idempotency), and continues execution until the business goal is achieved.