Denna artikel är en spegelartikel om maskinöversättning, klicka här för att hoppa till originalartikeln.

Utsikt: 32919|Svar: 0

[Källa] [Arkitektur]. net/c# implementerar distribuerad konfiguration av Key/Value-lagring baserat på Consul

[Kopiera länk]
Publicerad den 2020-10-16 18:18:06 | | | |
I distribuerade applikationer är det ofta nödvändigt att ändra konfigurationsegenskaper, såsom att uppdatera databasanslutningssträngar och uppdatera cacheadresser. Om det inte finns många applikationer kan du manuellt ändra dem, när det finns många applikationer är distribuerad konfiguration mycket viktig, denna artikel förklarar Key/Value-lagringsarkitekturen för .net/c# baserad på Consul för att implementera distribuerad konfiguration.

Installera Consul

Kort introduktion

Consul är ett verktyg för tjänsteupptäckt och registrering som är distribuerat och mycket skalbart.

Konsul omfattar huvudsakligen följande funktioner:

  • Tjänsteupptäckt: Stöd för tjänsteregistrering och upptäckt för både HTTP- och DNS-protokoll.
  • Övervakningskontroller: Stöder flera hälsokontroller.
  • Key/Value Storage: Stöder distribuerad KV-datalagring via HTTP API.
  • Multidatacenterstöd: Ett valfritt antal datacenter stöds.


Installation

Nedladdningsadress:

Inloggningen med hyperlänken är synlig.

Den här artikeln använder Windows 10 x64 som testmiljö.

Efter nedladdning och uppackning, kör den med kommandot cmd, koden är följande:



dev betyder att köras i utvecklingsläge, och parametern -klient kan användas för att ange vilken IP som får nås av klienten, till exempel betyder -klient 127.0.0.1 att den kan användas, och i utvecklingsläge kommer data inte att lagras.

(utvecklingsläge, klusterläge rekommenderas för produktionsmiljöer)



Tillgång:http://127.0.0.1:8500/ui/dc1/servicesSe nedan:



KV-gränssnitt

API-dokumentationsadress:

Inloggningen med hyperlänken är synlig.

Först använder jag en webbsida och skapar ett nytt nyckel-/värdepar.

Få värdet via GET-förfrågan /v1/kv/:key-vägen.

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



[
    {
        "LockIndex": 0,
        "Nyckel": "test",
        "Flaggor": 0,
        "Value": "aXRzdnNlLmNvbQ==",
        "CreateIndex": 194,
        "ModifieraIndex": 194
    }
]


  • CreateIndex är ett internt indexvärde som representerar när posten skapades.
  • ModifyIndex är det sista indexet som modifierar denna nyckel. Detta index motsvarar huvudvärdet som returneras av X-Consul-Index i svaret, och kan sättas av ? Indexfrågeparametern används för att etablera blockerande frågor. Du kan till och med utföra blockeringsfrågor mot hela delträdet i KV-butiken: tänk om? recurse tillhandahåller en fråga, och det returnerade värdet X-Consul-Index motsvarar det senaste värdet i ModifyIndex i prefixet, med blockningsfrågan ?index väntar man tills någon nyckel i det prefixet uppdateras.
  • LockIndex är antalet gånger nyckeln i låset har lyckats förvärvas. Om låset hålls kommer sessionsnyckeln att tillhandahålla sessionen som äger låset.
  • Nyckeln är bara hela vägen för posten.
  • Flaggor är ogenomskinliga osignerade heltal som kan fästas vid varje post. Kunder kan välja att använda detta alternativ, men det är logiskt för deras applikation.
  • Value är en base64-kodad datamassa.


.NET/C# Nyckel/Värde läs och skriv

Först skapar du ett .NET 4.6.1-projekt och använder nuget för att installera nödvändiga paket, enligt följande:



Koden är följande:



Renderingarna är följande:



  • Nyckelnyckeln är kasuskänslig
  • Dubblettnyckel, värdevärden kommer att skrivas över


(Slut)




Föregående:Felsöker .NET-program med Notepad hemma på en dator i tio år
Nästa:Arkitektur: ASP.NET Core konfigurerar dynamiskt heta uppdateringar baserat på Consul
Friskrivning:
All programvara, programmeringsmaterial eller artiklar som publiceras av Code Farmer Network är endast för lärande- och forskningsändamål; Ovanstående innehåll får inte användas för kommersiella eller olagliga ändamål, annars kommer användarna att bära alla konsekvenser. Informationen på denna sida kommer från internet, och upphovsrättstvister har inget med denna sida att göra. Du måste helt radera ovanstående innehåll från din dator inom 24 timmar efter nedladdning. Om du gillar programmet, vänligen stöd äkta programvara, köp registrering och få bättre äkta tjänster. Om det finns något intrång, vänligen kontakta oss via e-post.

Mail To:help@itsvse.com