Äristsenaariumites ei ole lubatud samaaegne sisu, nagu kaubainventar, sama fail jne, toimingud ning programmirakendus paigaldatakse mitmele serverile.
Varem kirjutatud zk-põhine hajutatud lukk on järgmine:
Mida sa pead ka teadma selle artikli lugemiseks:
.NET Core rakendab hajutatud lukustusi Redise põhjalPõhimõte on kutsuda SETNX käsk redis, kui võti juba eksisteerib, siis SETNX käsk ei tee midagi. Käsk tagastab väärtuse 1, kui seade õnnestub, ja 0, kui seade ebaõnnestub.
Hüperlingi sisselogimine on nähtav.
Loo uus .NET Core 3.1 konsooliprojekt, lisa StackExchange.Redis viide ja kasuta nuget käsku järgmiselt:
Kutsume teegi StringSet meetodit StackExchange.Redis lähtekoodi kaudu, näeme, et StringSet meetod kutsub privaatset meetodit GetStringSetMessage, et täita erinevaid komplekti käske loendusväärtuse kaudu, kood on järgmine:
Me täidame SETNX käsu 2000 korda paralleelse testikutse kaudu programmile, mis täidetakse kahes osas, kus võtme vahemälu kehtivusaeg on 5 sekundit, st võti vabastatakse automaatselt pärast 5 sekundit, st lukk vabastatakse.
Kood on järgmine:
Nagu näha, on kokku 2 edukat lisamist ja 1998. aasta ebaõnnestunud katset täpselt see, mida ootasime, ning renderdused on järgmised:
Praegu pole lukku veel vabastatud. (Lõpp)
|