Sdílet prostřednictvím


Trvalost pracovního postupu

Trvalost pracovního postupu je trvalý záznam stavu instance pracovního postupu nezávisle na informacích o procesu nebo počítači. Slouží k zajištění dobře známého bodu obnovení instance pracovního postupu v případě selhání systému nebo zachování paměti uvolněním instancí pracovního postupu, které aktivně neprovádí práci, nebo přesunutím stavu instance pracovního postupu z jednoho uzlu do jiného uzlu v serverové farmě.

Trvalost umožňuje flexibilitu procesů, škálovatelnost, obnovení v případě selhání a efektivnější správu paměti. Proces trvalosti zahrnuje identifikaci bodu trvalosti, shromažďování dat, která se mají uložit, a nakonec delegování skutečného úložiště dat poskytovateli trvalosti.

Chcete-li povolit trvalost pracovního postupu, musíte přidružit úložiště instancí k WorkflowApplication nebo WorkflowServiceHost , jak je uvedeno v tématu Postupy: Povolení trvalosti pro pracovní postupy a služby pracovních postupů. WorkflowApplication a WorkflowServiceHost používají úložiště instancí přidružené k nim, aby bylo možné zachovat instance pracovního postupu do úložiště trvalosti a načítat instance pracovního postupu do paměti na základě dat instance pracovního postupu uložených v úložišti trvalosti.

Rozhraní .NET Framework 4.6.1 se dodává s třídou SqlWorkflowInstanceStore , která umožňuje trvalost dat a metadat o instancích pracovního postupu do databáze SQL Serveru 2005 nebo SQL Serveru 2008. Další podrobnosti najdete v úložišti instancí pracovních postupů SQL .

Pokud chcete ukládat a načítat data specifická pro aplikaci spolu s informacemi souvisejícími s instancí pracovního postupu, můžete vytvořit persistenční účastníky, které rozšiřují třídu PersistenceParticipant. Účastník procesu trvalosti se účastní procesu ukládání vlastních serializovatelných dat do úložiště trvalosti, načítání dat z úložiště instancí do paměti a provádění jakékoliv další logiky v rámci transakce trvalosti. Další informace najdete v tématu Účastníci perzistence.

Windows Server App Fabric zjednodušuje proces konfigurace trvalosti. Další informace najdete v tématu Koncepty trvalosti s Windows Server App Fabric.

Implicitní body trvalosti

Následující seznam obsahuje příklady podmínek, při kterých je pracovní postup trvalý při přidružení úložiště instancí k pracovnímu postupu.

  • Když se aktivita TransactionScope nebo TransactedReceiveScope dokončí.

  • Pokud se instance pracovního postupu stane nečinnou a je nastavena možnost WorkflowIdleBehavior pro hostitele pracovního postupu. K tomu dochází například v případě, že používáte aktivity zasílání zpráv nebo aktivitu zpoždění .

  • Když se WorkflowApplication stane nečinnou a vlastnost PersistableIdle aplikace je nastavena na PersistableIdleAction.Persist.

  • Pokud je hostitelská aplikace instruována k zachování nebo uvolnění instance pracovního postupu.

  • Když je instance pracovního postupu ukončena nebo dokončena.

  • Při spuštění perzistentní aktivity.

  • Když instance pracovního postupu vyvinutá pomocí předchozí verze Windows Workflow Foundation narazí na bod persistentnosti během provádění v rámci interoperability.

V této sekci