Coğrafi çoğaltmayı etkinleştirme
Bu makale, Azure Uygulaması Yapılandırma depolarının çoğaltmasını kapsar. Yapılandırma deponuzda çoğaltma oluşturma, kullanma ve silme hakkında bilgi edineceksiniz.
Coğrafi çoğaltma kavramı hakkında daha fazla bilgi edinmek için bkz. Azure Uygulaması Yapılandırmasında coğrafi çoğaltma.
Önkoşullar
- Azure aboneliği - ücretsiz bir abonelik oluşturun
- Zaten bir Uygulama Yapılandırması mağazanız olduğunu varsayıyoruz. Bir mağaza oluşturmak istiyorsanız bir Uygulama Yapılandırması deposu oluşturun.
Çoğaltma oluşturma ve listeleme
Portalda yapılandırma deponuzun çoğaltmasını oluşturmak için aşağıdaki adımları izleyin.
Not
Statik IP ile yapılandırılmış özel uç noktalara sahip bir Uygulama Yapılandırması deposu için çoğaltma oluşturulması desteklenmez. Statik IP yapılandırmasına sahip bir özel uç noktayı tercih ediyorsanız, depoya herhangi bir özel uç nokta eklenmeden önce çoğaltmaların oluşturulması gerekir.
Uygulama Yapılandırması deponuzda, Ayarlar altında Coğrafi çoğaltma'yı seçin.
Çoğaltmalar'ın altında Oluştur'u seçin. Açılan listeden yeni çoğaltmanızın konumunu seçin ve çoğaltmaya bir ad atayın. Bu çoğaltma adı benzersiz olmalıdır.
Oluştur'u belirleyin.
Şimdi yeni çoğaltmanızın Çoğaltmalar altında listelendiğini görmeniz gerekir. Çoğaltmanın durumunun "Başarılı" olup olmadığını denetleyin ve bu da başarıyla oluşturulduğunu gösterir.
Bir çoğaltmayı sil
Portalda bir çoğaltmayı silmek için aşağıdaki adımları izleyin.
Uygulama Yapılandırması deponuzda, Ayarlar altında Coğrafi çoğaltma'yı seçin.
Çoğaltmalar'ın altında, silmek istediğiniz çoğaltmanın sağındaki ... öğesini seçin. Açılan listeden Sil'i seçin.
Silinecek çoğaltmanın adını doğrulayın ve onaylamak için Tamam'ı seçin.
İşlem tamamlandıktan sonra, doğru çoğaltmanın silindiği çoğaltmaların listesini denetleyin.
Çoğaltmalarla ölçeklendirme ve yük devretme
Oluşturduğunuz her çoğaltmanın ayrılmış uç noktası vardır. Uygulamanız birden çok coğrafi konumda bulunuyorsa, uygulamanızın her dağıtımını bir konumda güncelleştirerek bu konuma daha yakın çoğaltmaya bağlanabilirsiniz ve bu da uygulamanızla Uygulama Yapılandırması arasındaki ağ gecikmesini en aza indirmeye yardımcı olur. Her çoğaltmanın ayrı istek kotası olduğundan, bu kurulum uygulamanızın ölçeklenebilirliğine yardımcı olurken çok bölgeli dağıtılmış bir hizmete de yardımcı olur.
Coğrafi çoğaltma etkinleştirildiğinde ve bir çoğaltma erişilebilir değilse, gelişmiş dayanıklılık için uygulamanızın başka bir çoğaltmaya yük devretmesine izin vekleyebilirsiniz. Uygulama Yapılandırması sağlayıcı kitaplıkları, birden çok çoğaltma uç noktasını kabul ederek yerleşik yük devretme desteğine sahiptir. Çoğaltma uç noktalarınızın listesini en çok tercih edilen ve en az tercih edilen uç noktaya sırasıyla sağlayabilirsiniz. Geçerli uç noktaya erişilemiyorsa, sağlayıcı kitaplığı daha az tercih edilen bir uç noktaya yük devreder, ancak zaman zaman daha çok tercih edilen uç noktalara bağlanmaya çalışır. Daha fazla tercih edilen uç nokta kullanıma sunulduğunda, gelecekteki istekler için bu uç noktaya geçer.
Azure Uygulaması Yapılandırması kullanan bir uygulamanız olduğunu varsayarsak, yük devretme özelliğinden yararlanmak için bunu aşağıdaki örnek kod olarak güncelleştirebilirsiniz. Microsoft Entra kimlik doğrulaması için uç noktaların listesini veya erişim anahtarı tabanlı kimlik doğrulaması için bağlantı dizesi listesini sağlayabilirsiniz.
Genellikle uygulamanızın AddAzureAppConfiguration
dosyasında bulunan yöntemine yapılan çağrıyı program.cs
düzenleyin.
Microsoft Entra Id ile Bağlan
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
});
Bağlan Ion Dizesi ile Bağlan
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
});
Not
Aşağıdaki paketlerden herhangi birinin 6.0.0 veya sonraki bir sürümünü kullanıyorsanız yük devretme desteği sağlanır.
Microsoft.Extensions.Configuration.AzureAppConfiguration
Microsoft.Azure.AppConfiguration.AspNetCore
Microsoft.Azure.AppConfiguration.Functions.Worker
Uygulama Yapılandırması sağlayıcısı aşağıdaki koşulları gözlemlerse yük devretme gerçekleşebilir.
- Hizmet kullanılamıyor durumuyla (HTTP durum kodu 500 veya üzeri) yanıtları alır.
- Ağ bağlantısı sorunlarıyla ilgili deneyimler.
- İstekler kısıtlandı (HTTP durum kodu 429).
Kimlik doğrulaması hataları gibi istemci hataları için yük devretme gerçekleşmez.
Otomatik çoğaltma bulma
Uygulamanızın bağlanmasını veya yük devretmesini istediğiniz coğrafi çoğaltma özellikli bir Uygulama Yapılandırması deposunun bir veya daha fazla uç noktasını belirtebilirsiniz. Ancak, bu uç noktalardan hiçbiri erişilebilir değilse, Uygulama Yapılandırması sağlayıcı kitaplıkları ek çoğaltmaları otomatik olarak bulabilir ve bunlara bağlanmayı dener. Bu özellik, kodunuzu değiştirmek veya uygulamanızı yeniden dağıtmak zorunda kalmadan coğrafi çoğaltmadan yararlanmanızı sağlar. Bu, coğrafi çoğaltmayı etkinleştirebileceğiniz veya uygulamanız dağıtıldıktan sonra bile ek çoğaltma ekleyebileceğiniz anlamına gelir.
Otomatik olarak bulunan çoğaltmalar seçilir ve rastgele kullanılır. Belirli çoğaltmalar için tercihleriniz varsa, uç noktalarını açıkça belirtebilirsiniz. Bu özellik varsayılan olarak etkindir, ancak devre dışı bırakmak için aşağıdaki örnek koda başvurabilirsiniz.
Genellikle uygulamanızın AddAzureAppConfiguration
dosyasında bulunan yöntemine yapılan çağrıyı program.cs
düzenleyin.
configurationBuilder.AddAzureAppConfiguration(options =>
{
// Disable automatic replica discovery
options.ReplicaDiscoveryEnabled = false;
// Other changes to options
});
Not
Aşağıdaki paketlerden herhangi birinin 7.1.0 veya sonraki bir sürümünü kullanıyorsanız otomatik çoğaltma bulma desteği sağlanır.
Microsoft.Extensions.Configuration.AzureAppConfiguration
Microsoft.Azure.AppConfiguration.AspNetCore
Microsoft.Azure.AppConfiguration.Functions.Worker