Sdílet prostřednictvím


Úložiště instancí

Úložiště instancí je logický kontejner instancí. Je to místo, kde jsou uložena data instance a metadata. Úložiště instancí neznamená vyhrazené fyzické úložiště. Úložiště instancí může obsahovat trvalé informace v databázi SQL Serveru nebo informace o stavu, které nejsou odolné v paměti. Rozhraní .NET Framework 4.6.1 se dodává s úložištěm instancí pracovního postupu SQL, což je konkrétní implementace úložiště instancí, která umožňuje pracovním postupům uchovávat data a metadata instance do databáze SQL Serveru 2005 nebo SQL Serveru 2008. Kromě toho Windows Server App Fabric také poskytuje konkrétní implementaci úložiště instancí. Další informace najdete v tématu Windows Server App Fabric Instance Store, dotazování a zprostředkovatelé řízení.

Rozhraní API trvalosti je rozhraní mezi hostitelem a úložištěm instancí, které hostiteli umožňuje odesílat požadavky příkazů (například LoadWorkflowCommand a SaveWorkflowCommand) do úložiště instancí. Konkrétní implementace tohoto rozhraní API se nazývá zprostředkovatel trvalosti. Zprostředkovatel trvalosti přijímá požadavky od hostitele a upravuje úložiště instancí.

Hostitelé a úložiště instancí jsou připojitelné, aby bylo možné hostitele použít s mnoha úložišti instancí a úložiště instancí lze použít s mnoha hostiteli. Úložiště instancí je obvykle optimalizované pro vzorce použití konkrétního hostitele, i když úložiště instancí a hostitel se mohou vyvíjet v nezávislých životních cyklech. Například WorkflowServiceHost a SqlWorkflowInstanceStore jsou navrženy tak, aby dobře spolupracovaly. Můžete vytvořit vlastní úložiště instancí pro uchování dat a metadat instancí služby pracovního postupu a použití tohoto úložiště instancí s WorkflowServiceHost. Můžete například vytvořit OracleWorkflowInstanceStore, který umožňuje pracovní postupy uchovávat informace do databáze Oracle místo jejich uložení do databáze SQL Serveru.

Hostitelé se běžně rozšiřují o další funkce, které upraví trvalé objekty. Například systém trvalosti instance může mít hostitele pracovního postupu, rozšíření, které podporuje operaci Pozastavení a úložiště instancí SQL. Hostitel pracovního postupu může odeslat standardní příkaz, například uložit nebo načíst pracovní postup z úložiště instancí nebo uložit pracovní postup do úložiště instancí. Rozšíření pozastavení může do příkazů pro ukládání a načítání instancí pracovního postupu přidat další sémantiku, aby se nepodařilo načíst pozastavenou instanci pracovního postupu. Zprostředkovatel trvalosti úložiště instancí SQL rozumí příkazům pro ukládání a načítání instancí pracovního postupu a implementuje příkazy voláním příslušných uložených procedur, které mění tabulky trvalých objektů v databázi SQL Serveru.

Hostitel funguje jako vlastník instance v úložišti instancí. Hostitel může současně fungovat jako více než jeden vlastník instance s více než jedním úložištěm instancí. Hostitel poskytuje identifikátory GUID pro klíče instance přidružené k instancím. Klíč instance je jedinečný alias, který identifikuje instanci. Systém trvalosti vytváří, aktualizuje a odstraňuje informace vlastníka instance při provádění příkazů požadovaných hostiteli.

Následující seznam obsahuje důležité kroky, které jsou součástí interakce hostitele s úložištěm instancí:

  1. Získejte instanceStore od zprostředkovatele trvalosti.

  2. Získejte popisovač instance voláním CreateInstanceHandle metody na InstanceStore.

  3. Voláním metody v instanceStore vyvoláte příkazy na popisovači Execute instance.

  4. InstanceView Prozkoumejte vrácenou instanciStore.Execute a určete výsledky příkazů.