Konfigurace Reliable Actors - KVSActorStateProvider

Výchozí konfiguraci KVSActorStateProvider můžete upravit změnou souboru settings.xml, který je generován v kořenovém adresáři balíčku sady Microsoft Visual Studio ve složce Config pro zadaného objektu actor.

Modul runtime Azure Service Fabric hledá v souboru settings.xml předdefinované názvy oddílů a při vytváření podkladových komponent modulu runtime využívá hodnoty konfigurace.

Poznámka

V souboru settings.xml vygenerovaném v řešení sady Visual Studio neodstraňovat ani neupravujte názvy oddílů následujících konfigurací.

Konfigurace zabezpečení replikátoru

Konfigurace zabezpečení replikátoru slouží k zabezpečení komunikačního kanálu, který se používá během replikace. To znamená, že služby navzájem nevidí provoz replikace, což zajišťuje, že data, která jsou vysoce dostupná, jsou také zabezpečená. Ve výchozím nastavení brání zabezpečení replikace prázdný oddíl konfigurace zabezpečení.

Důležité

Na linuxových uzlech musí být certifikáty ve formátu PEM. Další informace o vyhledání a konfiguraci certifikátů pro Linux najdete v tématu Konfigurace certifikátů v Linuxu.

Název oddílu

<ActorName>ServiceReplicatorSecurityConfig

Konfigurace replikátoru

Konfigurace replikátoru konfigurují replikátor, který je zodpovědný za zajištění vysoké spolehlivosti stavu zprostředkovatele stavu objektu actor. Výchozí konfigurace je generována šablonou sady Visual Studio a měla by stačit. Tato část popisuje další konfigurace, které jsou k dispozici pro ladění replikátoru.

Název oddílu

<ActorName>ServiceReplicatorConfig

Názvy konfigurací

Name Jednotka Výchozí hodnota Poznámky
BatchAcknowledgementInterval Sekundy 0.015 Časové období, po které replikátor v sekundární databázi čeká po přijetí operace před odesláním potvrzení zpět primárnímu serveru. Veškerá další potvrzení, která se mají odeslat pro operace zpracovávané v tomto intervalu, se odesílají jako jedna odpověď.
ReplicatorEndpoint Žádný výchozí parametr IP adresa a port, které primární/sekundární replikátor použije ke komunikaci s ostatními replikátory v sadě replik. To by mělo odkazovat na koncový bod prostředku TCP v manifestu služby. Další informace o definování prostředků koncového bodu v manifestu služby najdete v tématu Prostředky manifestu služby.
RetryInterval Sekundy 5 Časové období, po jehož uplynutí replikátor znovu odešle zprávu, pokud neobdrží potvrzení operace.
MaxReplicationMessageSize Bajty 50 MB Maximální velikost replikačních dat, která se dají přenést v jedné zprávě.
MaxPrimaryReplicationQueueSize Počet operací 1024 Maximální počet operací v primární frontě Operace se uvolní, jakmile primární replikátor obdrží potvrzení od všech sekundárních replikátorů. Tato hodnota musí být větší než 64 a mocnina 2.
MaxSecondaryReplicationQueueSize Počet operací 2 048 Maximální počet operací v sekundární frontě Operace se uvolní poté, co se její stav nastaví jako vysoce dostupný prostřednictvím trvalosti. Tato hodnota musí být větší než 64 a mocnina 2.

Konfigurace úložiště

Konfigurace úložiště se používají ke konfiguraci místního úložiště, které se používá k zachování stavu, který se replikuje. Výchozí konfigurace je generována šablonou sady Visual Studio a měla by stačit. Tato část popisuje další konfigurace, které jsou k dispozici pro vyladění místního úložiště.

Název oddílu

<ActorName>ServiceLocalStoreConfig

Názvy konfigurací

Name Jednotka Výchozí hodnota Poznámky
MaxAsyncCommitDelayInMilliseconds Milisekund 200 Nastaví maximální interval dávkování pro trvalé potvrzení místního úložiště.
MaxVerPages Počet stránek 16384 Maximální počet stránek verze v databázi místního úložiště. Určuje maximální počet nevyřízených transakcí.

Ukázkový konfigurační soubor

<?xml version="1.0" encoding="utf-8"?>
<Settings xmlns:xsd="https://www.w3.org/2001/XMLSchema" xmlns:xsi="https://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.microsoft.com/2011/01/fabric">
   <Section Name="MyActorServiceReplicatorConfig">
      <Parameter Name="ReplicatorEndpoint" Value="MyActorServiceReplicatorEndpoint" />
      <Parameter Name="BatchAcknowledgementInterval" Value="0.05"/>
   </Section>
   <Section Name="MyActorServiceLocalStoreConfig">
      <Parameter Name="MaxVerPages" Value="8192" />
   </Section>
   <Section Name="MyActorServiceReplicatorSecurityConfig">
      <Parameter Name="CredentialType" Value="X509" />
      <Parameter Name="FindType" Value="FindByThumbprint" />
      <Parameter Name="FindValue" Value="9d c9 06 b1 69 dc 4f af fd 16 97 ac 78 1e 80 67 90 74 9d 2f" />
      <Parameter Name="StoreLocation" Value="LocalMachine" />
      <Parameter Name="StoreName" Value="My" />
      <Parameter Name="ProtectionLevel" Value="EncryptAndSign" />
      <Parameter Name="AllowedCommonNames" Value="My-Test-SAN1-Alice,My-Test-SAN1-Bob" />
   </Section>
</Settings>

Poznámky

Parametr BatchAcknowledgementInterval řídí latenci replikace. Hodnota 0 má za následek nejnižší možnou latenci za cenu propustnosti (protože musí být odesláno a zpracováno více potvrzovacích zpráv, z nichž každá obsahuje méně potvrzení). Čím větší je hodnota batchAcknowledgementInterval, tím vyšší je celková propustnost replikace za cenu vyšší latence operace. To přímo znamená latenci potvrzení transakce.