Bu makale makine çevirisi ayna makalesidir, orijinal makaleye geçmek için lütfen buraya tıklayın.

Görünüm: 32919|Yanıt: 0

[Kaynak] [Mimarlık]. net/c#, Consul temelinde Anahtar/Değer deposunun dağıtık yapılandırmasını uygular

[Bağlantıyı kopyala]
2020-10-16 tarihinde 18:18:06 tarihinde yayınlandı | | | |
Dağıtık uygulamalarda, veritabanı bağlantı dizelerini güncellemek ve önbellek adreslerini güncellemek gibi yapılandırma özelliklerini değiştirmek genellikle gereklidir. Çok fazla uygulama yoksa manuel olarak değiştirebilirsiniz, çok sayıda uygulama olduğunda dağıtık yapılandırma çok önemlidir, bu makale Consul tabanlı .net/c# Anahtar/Değer depolama mimarisini dağıtık yapılandırmayı uygulamak için açıklar.

Konsolos'u Yerleştir

Kısa giriş

Consul, dağıtık ve yüksek ölçeklenebilir bir hizmet keşfi ve kayıt aracıdır.

Consul esas olarak aşağıdaki özellikleri içerir:

  • Hizmet keşfi: HTTP ve DNS protokolleri için hizmet kaydı ve keşif desteği.
  • İzleme Kontrolleri: Birden fazla sağlık kontrolünü destekler.
  • Anahtar/Değer Depolama: HTTP API üzerinden dağıtık KV veri depolamayı destekler.
  • Çoklu veri merkezi desteği: Her türlü veri merkezi desteklenmektedir.


Kurma

İndir Adresi:

Bağlantı girişi görünür.

Bu makale test ortamı olarak Windows 10 x64 kullanmaktadır.

İndirip açtıktan sonra cmd komutunu kullanarak çalıştırın, kod şu şekildedir:



dev, geliştirme modunda çalışmak anlamına gelir ve -client parametresi istemcinin hangi IP'ye erişebileceğini belirtmek için kullanılabilir; örneğin, -client 127.0.0.1 kullanılabileceğini ifade eder ve geliştirme modunda veri kalıcı olmaz.

(Üretim ortamları için geliştirme modu, küme modu önerilir)



Erişim:http://127.0.0.1:8500/ui/dc1/servicesAşağıya bakınız:



KV arayüzü

API Dokümantasyon Adresi:

Bağlantı girişi görünür.

İlk olarak, çevrimiçi bir web sayfası kullanıyorum ve yeni bir anahtar/değer çifti oluşturuyorum.

Değeri GET request /v1/kv/:key yolu üzerinden alın.

http://127.0.0.1:8500/v1/kv/test



[
    {
        "LockIndex": 0,
        "Anahtar": "test",
        "Bayraklar": 0,
        "Value": "aXRzdnNlLmNvbQ==",
        "CreateIndex": 194,
        "ModifyIndex": 194
    }
]


  • CreateIndex, girişin oluşturulduğu zamanı gösteren dahili bir indeks değeridir.
  • ModifyIndex, bu anahtarı değiştiren son indekstir. Bu indeks, yanıtta X-Consul-Index tarafından verilen başlık değerine karşılık gelir ve ? index sorgu parametresi bloklama sorgularını oluşturmak için kullanılır. Hatta KV mağazasının tüm alt ağacına karşı engelleme sorguları bile yapabilirsiniz: ya şöyle olsa? recurse bir sorgu sağlar ve geri dönen X-Consul-Index değeri, önekteki ModifyIndex'in en son değerine karşılık gelir; engelleme sorgusu kullanıldığında ?index, o önekteki herhangi bir anahtarın güncellenmesini bekler.
  • LockIndex, kilitteki anahtarın kaç kez başarıyla elde edildiği miktardır. Kilit tutulursa, Oturum anahtarı kilidin sahibi olan oturumu sağlar.
  • Anahtar nokta girişin tam yolu.
  • Bayraklar, her girişe eklenebilen opak işaretsiz tam sayılardır. Müşteriler bu seçeneği kullanmayı seçebilir, ancak uygulama için mantıklı.
  • Value, base64 kodlanmış bir veri yığınıdır.


.NET/C# Anahtar/Değer okuma ve yazma

İlk olarak, bir .NET 4.6.1 projesi oluşturun ve gerekli paketleri kurmak için nuget kullanın, aşağıdaki gibi:



Kod şöyledir:



Çizimler aşağıdaki gibidir:



  • Anahtar anahtar büyük harf duyarlıdır
  • Kopyalanan anahtar, değer değerleri üzerine yazılır


(Son)




Önceki:.NET programlarını evde bilgisayarda Notepad ile on yıl boyunca hata ayıklama
Önümüzdeki:Mimari: ASP.NET Core, Consul'a dayalı sıcak güncellemeleri dinamik olarak yapılar
Feragatname:
Code Farmer Network tarafından yayımlanan tüm yazılım, programlama materyalleri veya makaleler yalnızca öğrenme ve araştırma amaçları içindir; Yukarıdaki içerik ticari veya yasa dışı amaçlarla kullanılamaz, aksi takdirde kullanıcılar tüm sonuçları ödemelidir. Bu sitedeki bilgiler internetten alınmakta olup, telif hakkı anlaşmazlıklarının bu siteyle hiçbir ilgisi yoktur. Yukarıdaki içeriği indirmeden sonraki 24 saat içinde bilgisayarınızdan tamamen silmelisiniz. Programı beğendiyseniz, lütfen orijinal yazılımı destekleyin, kayıt satın alın ve daha iyi orijinal hizmetler alın. Herhangi bir ihlal olursa, lütfen bizimle e-posta yoluyla iletişime geçin.

Mail To:help@itsvse.com