Acest articol este un articol oglindă al traducerii automate, vă rugăm să faceți clic aici pentru a sări la articolul original.

Vedere: 156057|Răspunde: 37

[Program de consolă] .net/c# Implementarea blocării distribuite Zookeeper [Cod sursă]

[Copiază linkul]
Postat pe 04.04.2018 17:10:42 | | | |
În primul rând, următoarele două articole despre .net/c# Zookeeper au distribuit lacătele:

Autentificarea cu hyperlink este vizibilă.

Autentificarea cu hyperlink este vizibilă.

De fapt, cele două articole de mai sus sunt greșite! Complet induc în eroare dezvoltatorii de programare!


DespreTutorial de instalare Zookeeper:

【Luptă practică】tutorial de instalare Zookeeper în mediul Windows
http://www.itsvse.com/thread-4603-1-1.html
(Sursa: Architect_Programmer)

Principiul de implementare al blocajului distribuit Zookeeper este explicat în termeni simpli:

1: Să pună toate nodurile copil sub dulap

2: Toate subnodurile sunt sortate, iată două situații

Dacă nodul tău are cel mai mic număr de serie, atunci clientul este considerat că a obținut blocarea. Poți să faci ce vrei!
Dacă nodul tău nu este cel mai mic număr de serie, nodul care ascultă cel mai mic nod nu este nodul anterior mai mic decât tine!! Fiți atenți aici!
(Pentru că nodul tău anterior poate expira și eliberează blocarea!) )

3: Așteaptă notificarea Zookeeper, apoi repetă operațiunea lui 2, extrage toate nodurile, sortează-le și judecă dacă ești cel mai mic nod............

După ce știm principiul, să vedem de ce primele două introduceri ale articolului sunt greșite?





Uitându-mă la exemplul ordinii din articol, pare corect, iar rezultatul după rulare este, de asemenea, corect! Totuși, dacă testezi de câteva ori, vei ști că codul articolului este complet greșit!!!

Așa că, știind principiul, hai să-l scriem noi! Oricum, nu e prima dată când sunt prins de cod pe Internet!

Iată gif-ul corect:



Cod de apel:



Versiunea ZooKeeperNet.dll folosită este 3.4.6.1

[Luptă propriu-zisă] ASP.NET Core se bazează pe vânzarea flash a lacătei distribuite Redis
https://www.itsvse.com/thread-9397-1-1.html

În final, atașează codul sursă:

Turiști, dacă vreți să vedeți conținutul ascuns al acestei postări, vă rogRăspunde





Precedent:Rezolvă problema "Folosirea unei parole pe interfața de linie de comandă... "
Următor:jquery primește tipul de etichetă al obiectului jquery
Postat pe 06.05.2019 18:15:55 |
LZ, m-am uitat la codul sursă și nu gestiona operațiunile de timeout zk, cum ar fi eliberarea blocărilor, fie din cauza mecanismului temporar al nodului ZK. Dacă zk-ul este deconectat, nodul este șters automat.
Postat pe 03.07.2019 11:16:25 |
Eroare de rulare: Aruncă o excepție de tip ZooKeeperNet.KeeperException+ConnectionLossException.
Postat pe 06.05.2019 18:17:02 |
În cazul unui singur zk, s-ar putea să nu existe nicio problemă. Dacă zk este un cluster, vor exista probleme cu performanța celor 3 actualizări sincronizate cu date zk?
Postat pe 08.04.2018 16:32:38 |
Mulțumesc că ai împărtășit, hai să aruncăm o privire
Postat pe 01.06.2018 12:01:39 |
Mulțumesc că ai împărtășit
Postat pe 05.07.2018 12:31:02 |
Postare frumoasă
Postat pe 10.07.2018 12:11:14 |
Mark
Mark
Mark
Mark
Postat pe 11.07.2018 15:47:20 |
Da, lucrăm la o schemă de implementare a blocării distribuției
Postat pe 01.08.2018 12:52:23 |
Hai să aruncăm o privire
Postat pe 28.10.2018 19:55:23 |
Învață să înveți
Postat pe 31.10.2018 16:52:15 |
Învăț, mulțumesc
Postat pe 23.11.2018 10:24:32 |
Nu e rău, foarte bine
Disclaimer:
Tot software-ul, materialele de programare sau articolele publicate de Code Farmer Network sunt destinate exclusiv scopurilor de învățare și cercetare; Conținutul de mai sus nu va fi folosit în scopuri comerciale sau ilegale, altfel utilizatorii vor suporta toate consecințele. Informațiile de pe acest site provin de pe Internet, iar disputele privind drepturile de autor nu au legătură cu acest site. Trebuie să ștergi complet conținutul de mai sus de pe calculatorul tău în termen de 24 de ore de la descărcare. Dacă îți place programul, te rugăm să susții software-ul autentic, să cumperi înregistrarea și să primești servicii autentice mai bune. Dacă există vreo încălcare, vă rugăm să ne contactați prin e-mail.

Mail To:help@itsvse.com