See artikkel on masintõlke peegelartikkel, palun klõpsake siia, et hüpata algse artikli juurde.

Vaade: 50989|Vastuse: 2

[Allikas] .NET Core rakendab hajutatud lukke, mis põhinevad Redis Lual [lähtekoodiga]

[Kopeeri link]
Postitatud 2021-5-9 21:11:18 | | | |
Hajutatud lukkude rakendusstsenaariumid: Teenuste arenguga muutuvad üksikud rakendused klastriteks, hajutatud lukud lahendavad erinevate protsesside (lõimede) toimimise samal ressursil samaaegsetes olukordades ning mõned teenused peavad nõudma ühte lõime, näiteks: hoiuste summade muutused, kaubavarude muutused jne.

Läbivaatamine:

.NET Core rakendab hajutatud luku põhimõttelist parseerimist, mis põhineb Redis'il
https://www.itsvse.com/thread-9391-1-1.html

.net/c# Zookeeperi hajutatud luku rakendus [lähtekood]
https://www.itsvse.com/thread-4651-1-1.html

Redis kasutab üksikasjalike selgituste jaoks Lua skripte
https://www.itsvse.com/thread-9634-1-1.html

[Tegelik lahing] ASP.NET Core põhineb Redis levitatud lukuvälgu müügil
https://www.itsvse.com/thread-9397-1-1.html

Eelmises artiklis "[Harjuta]ASP.NET Tuum põhineb Redis Distributed Lock Flash Kill'il", lubasime luku lisamisel ka taustalõime, et pikendada lukustusaega, et tagada, et luku vabastamisel ei kustutataks teiste lõimede poolt hõivatud lukku ekslikult.

Pärast seda, kui Redis on õppinud Lua skripte kasutama, saad skriptidega hõlpsasti täita hõivatuslukke ja vabastada lukke.


Esmalt vaatame renderdusi järgmiselt:



Me avasime esmalt 1000 paralleelset lõime, et luku pärast konkureerida, ja lukk aegus 5 sekundiks.Me lõpetasime 1000 lõime 5 sekundiga ja ainult üks lõim suutis luku edukalt kätte saadaPärast 6-sekundilist ootamist vabastatakse lukk automaatselt ning näed, et teine ülesanne on luku edukalt kätte saanud, kohe luku vabastanud ja järgmine kood on luku edukalt kätte saanud.

Lua skript luku saamiseks on järgmine:

Lua skript luku vabastamiseks on järgmine:

Liidese kood:

Lähtekoodi allalaadimine:Hüperlingi sisselogimine on nähtav.

Muuda "[Praktika] ASP.NET Core Redis distributed lock flash müügi põhjal" on selle artikli abil rakendatud ning meie veebileht simuleerib seda10000 eset, ja seejärel kirjutas konsooli, mis simuleerib HTTP päringu aega.Välja müüdud mäng on valmis 6 sekundiga, nagu alloleval joonisel näidatud:

[Tegelik lahing] ASP.NET Core põhineb Redis levitatud lukuvälgu müügil
https://www.itsvse.com/thread-9397-1-1.html



Muuda testisimulatsiooni päringukoodi:



(Lõpp)




Eelmine:Kafka seab nihke käsitsi
Järgmine:ASP.NET Core saab taotluse täieliku URL-lingi
Postitatud 2021-11-4 13:50:43 |
{:1_1:} {:1_1:} {:1_1:} {:1_1:} {:1_1:} {:1_1:} {:1_1:} {:1_1:} {:1_1:} {:1_1:} {:1_1:} {:1_1:} {:1_1:} {:1_1:} {:1_1:} {:1_1:}
Postitatud 2022-6-11 13:36:33 |
Aitäh, aitäh
Disclaimer:
Kõik Code Farmer Networki poolt avaldatud tarkvara, programmeerimismaterjalid või artiklid on mõeldud ainult õppimiseks ja uurimistööks; Ülaltoodud sisu ei tohi kasutada ärilistel ega ebaseaduslikel eesmärkidel, vastasel juhul kannavad kasutajad kõik tagajärjed. Selle saidi info pärineb internetist ning autoriõiguste vaidlused ei ole selle saidiga seotud. Ülaltoodud sisu tuleb oma arvutist täielikult kustutada 24 tunni jooksul pärast allalaadimist. Kui sulle programm meeldib, palun toeta originaaltarkvara, osta registreerimist ja saa paremaid ehtsaid teenuseid. Kui esineb rikkumist, palun võtke meiega ühendust e-posti teel.

Mail To:help@itsvse.com