Povolení geografické replikace
Tento článek se zabývá replikací úložišť konfigurace Aplikace Azure. Dozvíte se, jak vytvořit, použít a odstranit repliku v úložišti konfigurace.
Další informace o konceptu geografické replikace najdete v tématu Geografická replikace v konfiguraci Aplikace Azure.
Požadavky
- Předplatné Azure – vytvořte si ho zdarma
- Předpokládáme, že už máte obchod App Configuration Store. Pokud ho chcete vytvořit, vytvořte obchod s konfigurací aplikací.
Vytvoření a výpis repliky
Pokud chcete vytvořit repliku úložiště konfigurace na portálu, postupujte podle následujících kroků.
Poznámka:
Vytvoření repliky pro úložiště app Configuration s privátními koncovými body nakonfigurovanými pro statickou IP adresu se nepodporuje. Pokud dáváte přednost privátnímu koncovému bodu s konfigurací statické IP adresy, musí se repliky vytvořit před tím, než se do úložiště přidá jakýkoli privátní koncový bod.
V Obchodě App Configuration v části Nastavení vyberte Geografická replikace.
V části Repliky vyberte Vytvořit. V rozevíracím seznamu zvolte umístění nové repliky a pak přiřaďte název repliky. Tento název repliky musí být jedinečný.
Vyberte Vytvořit.
Teď byste měli vidět novou repliku uvedenou v části Repliky. Zkontrolujte, jestli je stav repliky úspěšný, což znamená, že byla úspěšně vytvořena.
Odstranění repliky
Pokud chcete odstranit repliku na portálu, postupujte podle následujících kroků.
V Obchodě App Configuration v části Nastavení vyberte Geografická replikace.
V části Repliky vyberte vpravo od repliky, kterou chcete odstranit. V rozevíracím seznamu vyberte Odstranit .
Ověřte název repliky, která se má odstranit, a potvrďte kliknutím na tlačítko OK .
Po dokončení procesu zkontrolujte seznam replik, které byla odstraněna správná replika.
Automatické zjišťování replik
Poskytovatelé konfigurace aplikací můžou automaticky zjišťovat všechny repliky z daného koncového bodu konfigurace aplikace a pokoušet se k nim připojit. Tato funkce umožňuje využívat geografickou replikaci, aniž byste museli měnit kód nebo znovu nasadit aplikaci. To znamená, že můžete povolit geografickou replikaci nebo přidat další repliky i po nasazení aplikace.
Automatické zjišťování replik je ve výchozím nastavení povolené, ale můžete se podívat na následující ukázkový kód a zakázat ho (nedoporučuje se).
Upravte volání AddAzureAppConfiguration
metody, která se často nachází v program.cs
souboru vaší aplikace.
configurationBuilder.AddAzureAppConfiguration(options =>
{
// Disable automatic replica discovery
options.ReplicaDiscoveryEnabled = false;
// Other changes to options
});
Poznámka:
Podpora automatického zjišťování replik je dostupná, pokud používáte verzi 7.1.0 nebo novější z následujících balíčků.
Microsoft.Extensions.Configuration.AzureAppConfiguration
Microsoft.Azure.AppConfiguration.AspNetCore
Microsoft.Azure.AppConfiguration.Functions.Worker
Škálování a převzetí služeb při selhání s využitím replik
Každá replika, kterou vytvoříte, má svůj vyhrazený koncový bod. Pokud se vaše aplikace nachází v několika geografických umístěních, můžete každé nasazení vaší aplikace aktualizovat v umístění, aby se připojila k replice blíže k danému umístění, což pomáhá minimalizovat latenci sítě mezi vaší aplikací a službou App Configuration. Vzhledem k tomu, že každá replika má samostatnou kvótu požadavků, pomůže tato instalace také škálovatelnost vaší aplikace, zatímco roste na distribuovanou službu ve více oblastech.
Pokud je povolená geografická replikace a pokud jedna replika není přístupná, můžete nechat převzetí služeb při selhání aplikace na jinou repliku, aby se zlepšila odolnost. Poskytovatelé konfigurace aplikací mají integrovanou podporu převzetí služeb při selhání prostřednictvím replik poskytovaných uživatelem nebo dalších automaticky zjištěných replik. Můžete zadat seznam koncových bodů repliky v pořadí, v jakém je nejvhodnější pro nejméně upřednostňovaný koncový bod. Pokud aktuální koncový bod není přístupný, poskytovatel převezme služby při selhání do méně upřednostňovaného koncového bodu, ale pokusí se připojit k upřednostňovanějším koncovým bodům od času. Pokud všechny repliky poskytnuté uživatelem nejsou přístupné, automaticky zjištěné repliky se náhodně vyberou a použijí. Jakmile bude k dispozici upřednostňovanější koncový bod, poskytovatel na něj přejde pro budoucí požadavky.
Za předpokladu, že máte aplikaci používající Aplikace Azure Configuration, můžete ji aktualizovat jako následující ukázkový kód, abyste mohli využít výhod funkce převzetí služeb při selhání. Můžete zadat seznam koncových bodů pro ověřování Microsoft Entra nebo seznam připojovací řetězec pro ověřování na základě přístupového klíče.
Upravte volání AddAzureAppConfiguration
metody, která se často nachází v program.cs
souboru vaší aplikace.
Připojení pomocí Microsoft Entra ID
configurationBuilder.AddAzureAppConfiguration(options =>
{
// Provide an ordered list of replica endpoints
var endpoints = new Uri[] {
new Uri("<first-replica-endpoint>"),
new Uri("<second-replica-endpoint>") };
// Connect to replica endpoints using Microsoft Entra authentication
options.Connect(endpoints, new DefaultAzureCredential());
// Other changes to options
});
Připojení pomocí připojovacího řetězce
configurationBuilder.AddAzureAppConfiguration(options =>
{
// Provide an ordered list of replica connection strings
var connectionStrings = new string[] {
Environment.GetEnvironmentVariable("FIRST_REPLICA_CONNECTION_STRING"),
Environment.GetEnvironmentVariable("SECOND_REPLICA_CONNECTION_STRING") };
// Connect to replica endpoints using connection strings
options.Connect(connectionStrings);
// Other changes to options
});
Poznámka:
Podpora převzetí služeb při selhání je dostupná, pokud používáte verzi 6.0.0 nebo novější z následujících balíčků.
Microsoft.Extensions.Configuration.AzureAppConfiguration
Microsoft.Azure.AppConfiguration.AspNetCore
Microsoft.Azure.AppConfiguration.Functions.Worker
K převzetí služeb při selhání může dojít, pokud poskytovatel konfigurace aplikace dodržuje následující podmínky.
- Přijímá odpovědi se stavem nedostupnosti služby (stavový kód HTTP 500 nebo vyšší).
- Dochází k problémům s připojením k síti.
- Požadavky jsou omezené (stavový kód HTTP 429).
Převzetí služeb při selhání se nestane u chyb klienta, jako jsou selhání ověřování.
Vyrovnávání zatížení s využitím replik
Ve výchozím nastavení vaše aplikace vždy odesílá požadavky do nejpřednějšího koncového bodu, který zadáte, s výjimkou případu převzetí služeb při selhání. Kromě převzetí služeb při selhání je možné repliky použít také k vyrovnávání zatížení požadavků. Díky proaktivnímu distribuci požadavků napříč všemi dostupnými replikami v průběhu času se můžete vyhnout vyčerpání kvóty požadavků jedné repliky a zlepšit celkovou škálovatelnost vaší aplikace.
Poskytovatelé konfigurace aplikací nabízejí integrovanou podporu vyrovnávání zatížení mezi replikami bez ohledu na to, jestli jsou poskytovány v kódu nebo automaticky zjištěny. K povolení této funkce ve vaší aplikaci můžete použít následující ukázky kódu (doporučeno).
Upravte volání AddAzureAppConfiguration
metody, která se často nachází v program.cs
souboru vaší aplikace.
configurationBuilder.AddAzureAppConfiguration(options =>
{
// Enable load balancing
options.LoadBalancingEnabled = true;
// Other changes to options
});
Poznámka:
Podpora vyrovnávání zatížení je dostupná, pokud používáte verzi 8.0.0-preview.3 nebo novější z následujících balíčků.
Microsoft.Extensions.Configuration.AzureAppConfiguration
Microsoft.Azure.AppConfiguration.AspNetCore
Microsoft.Azure.AppConfiguration.Functions.Worker