Delen via


Reliable Actors configureren--KVSActorStateProvider

U kunt de standaardconfiguratie van KVSActorStateProvider wijzigen door het settings.xml-bestand te wijzigen dat wordt gegenereerd in de hoofdmap van het Microsoft Visual Studio-pakket onder de map Configuratie voor de opgegeven actor.

De Azure Service Fabric-runtime zoekt naar vooraf gedefinieerde sectienamen in het settings.xml-bestand en verbruikt de configuratiewaarden tijdens het maken van de onderliggende runtimeonderdelen.

Notitie

Verwijder of wijzig de sectienamen van de volgende configuraties niet in het settings.xml-bestand dat is gegenereerd in de Visual Studio-oplossing.

Configuratie van replicatorbeveiliging

Replicatorbeveiligingsconfiguraties worden gebruikt om het communicatiekanaal te beveiligen dat tijdens de replicatie wordt gebruikt. Dit betekent dat services elkaars replicatieverkeer niet kunnen zien, zodat de gegevens die maximaal beschikbaar worden gesteld ook veilig zijn. Standaard voorkomt een lege beveiligingsconfiguratiesectie replicatiebeveiliging.

Belangrijk

Op Linux-knooppunten moeten certificaten met PEM-indeling zijn opgemaakt. Zie Certificaten configureren in Linux voor meer informatie over het zoeken en configureren van certificaten voor Linux.

Sectienaam

<ActorName>ServiceReplicatorSecurityConfig

Replicatorconfiguratie

Replicatorconfiguraties configureren de replicator die verantwoordelijk is voor het zeer betrouwbaar maken van de status actorstatusprovider. De standaardconfiguratie wordt gegenereerd door de Visual Studio-sjabloon en moet voldoende zijn. In deze sectie vindt u informatie over aanvullende configuraties die beschikbaar zijn om de replicator af te stemmen.

Sectienaam

<ActorName>ServiceReplicatorConfig

Configuratienamen

Naam Eenheid Default value Opmerkingen
BatchAcknowledgementInterval Seconden 0,015 De periode waarvoor de replicator op de secundaire server wacht na ontvangst van een bewerking voordat een bevestiging naar de primaire wordt teruggestuurd. Alle andere bevestigingen die moeten worden verzonden voor bewerkingen die binnen dit interval worden verwerkt, worden als één antwoord verzonden.
ReplicatorEndpoint N.v.t. Geen standaardparameter vereist IP-adres en poort die de primaire/secundaire replicator gebruikt om te communiceren met andere replicators in de replicaset. Dit moet verwijzen naar een TCP-resource-eindpunt in het servicemanifest. Raadpleeg servicemanifestresources voor meer informatie over het definiëren van eindpuntresources in het servicemanifest.
RetryInterval Seconden 5 Tijdsperiode waarna de replicator een bericht opnieuw verzendt als er geen bevestiging voor een bewerking wordt ontvangen.
MaxReplicationMessageSize Bytes 50 MB Maximale grootte van replicatiegegevens die in één bericht kunnen worden verzonden.
MaxPrimaryReplicationQueueSize Aantal bewerkingen 1024 Maximum aantal bewerkingen in de primaire wachtrij. Een bewerking wordt vrijgemaakt nadat de primaire replicator een bevestiging ontvangt van alle secundaire replicators. Deze waarde moet groter zijn dan 64 en een macht van 2.
MaxSecondaryReplicationQueueSize Aantal bewerkingen 2048 Maximum aantal bewerkingen in de secundaire wachtrij. Een bewerking wordt vrijgemaakt nadat de status maximaal beschikbaar is via persistentie. Deze waarde moet groter zijn dan 64 en een macht van 2.

Configuratie opslaan

Opslagconfiguraties worden gebruikt om het lokale archief te configureren dat wordt gebruikt om de status te behouden die wordt gerepliceerd. De standaardconfiguratie wordt gegenereerd door de Visual Studio-sjabloon en moet voldoende zijn. In deze sectie vindt u informatie over aanvullende configuraties die beschikbaar zijn om het lokale archief af te stemmen.

Sectienaam

<ActorName>ServiceLocalStoreConfig

Configuratienamen

Naam Eenheid Default value Opmerkingen
MaxAsyncCommitDelayInMilliseconds Milliseconden 200 Hiermee stelt u het maximale batchinterval in voor duurzame lokale opslagdoorvoeringen.
MaxVerPages Aantal pagina's 16384 Het maximum aantal versiepagina's in de lokale archiefdatabase. Het bepaalt het maximum aantal openstaande transacties.

Voorbeeldconfiguratiebestand

<?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>

Opmerkingen

De parameter BatchAcknowledgementInterval bepaalt de latentie van de replicatie. Een waarde van '0' resulteert in de laagst mogelijke latentie, ten koste van doorvoer (omdat er meer bevestigingsberichten moeten worden verzonden en verwerkt, elk met minder bevestigingen). Hoe groter de waarde voor BatchAcknowledgementInterval, hoe hoger de totale replicatiedoorvoer, ten koste van een hogere latentie van de bewerking. Dit vertaalt zich rechtstreeks naar de latentie van transactiedoorvoeringen.