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

Utsikt: 156057|Svar: 37

[Konsolprogram] .net/c# Zookeeper distribuerad låsimplementering [källkod]

[Kopiera länk]
Publicerad på 2018-04-04 17:10:42 | | | |
Först, följande två artiklar om .net/c# Zookeeper distribuerade lås:

Inloggningen med hyperlänken är synlig.

Inloggningen med hyperlänken är synlig.

Faktum är att de två ovanstående artiklarna är fel! Helt vilseledande programmeringsutvecklare!


OmTutorial för installation av Zookeeper:

【Practical Combat】Zookeeper installationshandledning i Windows-miljö
http://www.itsvse.com/thread-4603-1-1.html
(Källa: Architect_Programmer)

Implementeringsprincipen för Zookeeper distribuerat lås förklaras på ett enkelt sätt:

1: Få alla barnnoder under skåpet

2: Alla undernoder är sorterade, här är två situationer

Om din nod har det minsta serienumret anses klienten ha fått låset. Du kan göra ditt eget!
Om din nod inte har det minsta serienumret, är den nod som lyssnar på den minsta noden inte den föregående noden som är mindre än du!! Var uppmärksam här!
(För att din tidigare nod kan gå ut och låsa låset!) )

3: Vänta på Zookeeper-notisen, och upprepa sedan operationen 2, dra alla noder, sortera dem och bedöm om du är den minsta noden............

När vi känner till principen, låt oss titta på varför de två översta inledningarna i artikeln är fel?





Om man tittar på exemplet med ordningen i artikeln känns det rätt, och resultatet efter att ha sprungit är också korrekt! Men om du testar det några gånger kommer du att veta att koden i artikeln är helt fel!!!

Så, med tanke på principen, låt oss skriva den själva! Hur som helst, det är inte första gången jag blivit stoppad av kod på internet!

Här är rätt gif:



Anropskod:



Den ZooKeeperNet.dll versionen som används är 3.4.6.1

[Faktisk strid] ASP.NET Core är baserat på Redis distribuerade låsflash-försäljning
https://www.itsvse.com/thread-9397-1-1.html

Slutligen, bifoga källkoden:

Turister, om ni vill se det dolda innehållet i detta inlägg, snällaSvar





Föregående:Lös problemet med "Att använda ett lösenord på kommandoradsgränssnittet... "
Nästa:jquery hämtar etiketttypen för jquery-objektet
Publicerad på 2019-05-06 18:15:55 |
LZ, jag tittade på källkoden och den hanterade inte zk-timeout-operationer som att släppa lås, oavsett om det berodde på ZK:s temporära nodmekanism. Om zk kopplas bort raderas noden automatiskt.
Publicerad på 2019-07-03 11:16:25 |
Körfel: Kastar ett undantag av typen ZooKeeperNet.KeeperException+ConnectionLossException.
Publicerad på 2019-05-06 18:17:02 |
I fallet med en enda zk kan det inte vara något problem. Om zk är ett kluster, kommer det då att uppstå problem med prestandan för 3 zk datasynkroniserade uppdateringar?
Publicerad på 2018-04-08 16:32:38 |
Tack för att du delade med dig, låt oss ta en titt
Publicerad på 2018-06-01 12:01:39 |
Tack för att du delade med dig
Publicerad på 2018-07-05 12:31:02 |
Bra inlägg
Publicerad på 2018-07-10 12:11:14 |
Mark
Mark
Mark
Mark
Publicerad på 2018-07-11 15:47:20 |
Ja, vi arbetar på ett distributionslås-implementeringsschema
Publicerad på 2018-08-01 12:52:23 |
Låt oss ta en titt
Publicerad på 2018-10-28 19:55:23 |
Lär dig att lära dig
Publicerad på 2018-10-31 16:52:15 |
Pluggar, tack
Publicerad på 2018-11-23 10:24:32 |
Inte illa, mycket bra
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