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 účastníky trvalosti, které rozšiřují PersistenceParticipant třídu. Účastník trvalosti se účastní procesu trvalosti uložit vlastní serializovatelná data do úložiště trvalosti, načíst data z úložiště instance do paměti a provést jakoukoli další logiku v rámci transakce trvalosti. Další informace najdete v tématu Účastníci trvalosti.
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 dokončí nebo aktivita TransactedReceiveScope se dokončí.
Když se instance pracovního postupu stane nečinnou a WorkflowIdleBehavior je nastavena na 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í trvalé aktivity.
Když instance pracovního postupu vyvinutého pomocí předchozí verze Windows Workflow Foundation zaznamená bod trvalosti během interoperabilního spuštění.