Tämä artikkeli on konekäännöksen peiliartikkeli, klikkaa tästä siirtyäksesi alkuperäiseen artikkeliin.

Näkymä: 34174|Vastaus: 5

[.NET Core] .NET Core toteuttaa hajautetun lukkoperiaatteen jäsentämisen Redisin pohjalta

[Kopioi linkki]
Julkaistu 22.9.2020 9.17.22 | | | |
Liiketoimintatilanteissa samanaikaiset sisällön, kuten tavarainventaarion, saman tiedoston jne., toiminnot eivät ole sallittuja, ja ohjelmasovellus otetaan käyttöön useille palvelimille.
[Varsinainen taistelu] ASP.NET Core perustuu Redisin jakamaan lukon flash-myyntiin
https://www.itsvse.com/thread-9397-1-1.html

Aiemmin kirjoitettu zk-pohjainen hajautettu lukko on seuraava:

.net/c# Zookeeperin hajautetun lukon toteutus [lähdekoodi]
https://www.itsvse.com/thread-4651-1-1.html

Mitä sinun myös tulee tietää tämän artikkelin lukemiseksi:

Epävakaa vs. Lukittu vs. lukko
https://www.itsvse.com/thread-5023-1-1.html

C# Rinnakkaislaskenta Parallel.For&Parallel.For
https://www.itsvse.com/thread-3671-1-1.html

.NET Core toteuttaa hajautettuja lukkoja Redisin pohjaltaPeriaate on kutsua SETNX-komento redisistä, jos avain on jo olemassa, SETNX-komento ei tee mitään. Komento palauttaa arvon 1, kun asetus onnistuu, ja 0, kun asetus epäonnistuu.

Hyperlinkin kirjautuminen on näkyvissä.

Luo uusi .NET Core 3.1 -konsoliprojekti, lisää StackExchange.Redis -viittaus ja käytä nuget-komentoa seuraavasti:

Kutsumme kirjaston StringSet-metodia StackExchange.Redis -lähdekoodin kautta, ja näemme, että StringSet-metodi kutsuu yksityistä metodia GetStringSetMessage suorittaakseen eri joukkokomentoja numerointiarvon avulla, koodi on seuraava:

Suoritamme SETNX-komennon 2000 kertaa ohjelmalle tehdyn rinnakkaisen testikutsun kautta, joka suoritetaan kahdessa osassa, joissa avaimen välimuistin voimassaoloaika on 5 sekuntia, eli avain vapautetaan automaattisesti 5 sekunnin kuluttua, eli lukko vapautetaan.

Koodi on seuraava:


Kuten näette, yhteensä 2 onnistunutta lisäystä ja vuoden 1998 epäonnistunutta yritystä ovat juuri sitä, mitä odotimme, ja renderöinnit ovat seuraavat:


Tällä hetkellä lukkoa ei ole vielä avattu.
(Loppu)









Edellinen:En löytänyt kiertotietä osalle polkua "\bin\roslyn\csc.exe"
Seuraava:EF Core Series 2 kapseloi OnModelCreatingin, luo indeksejä heijastusten avulla ja paljon muuta
 Vuokraisäntä| Julkaistu 26.9.2020 15.37.52 |
test123
Julkaistu 20.11.2020 11.18.31 |
Jos konttien käyttöönotossa on monisäikeinen ympäristö ja moniinstanssiympäristö, onko tässä käsittelyssä ongelma?
 Vuokraisäntä| Julkaistu 20.11.2020 11.29.44 |
qiuyueming Julkaistu 20.11.2020 klo 11:18
Jos konttien käyttöönotossa on monisäikeinen ympäristö ja moniinstanssiympäristö, onko tässä käsittelyssä ongelma? ...

Moniinstanssi tarkoittaa monisäikeisyyttä, ja lähdekoodissa monisäikeinen kutsuu redisiä, ja vain yksi säie saa lukon
Julkaistu 22.3.2022 14.32.40 |
Tuki, tuki
Julkaistu 23.3.2022 11.15.30 |
Opi, että tämä on hyvä @
Vastuuvapauslauseke:
Kaikki Code Farmer Networkin julkaisemat ohjelmistot, ohjelmamateriaalit tai artikkelit ovat tarkoitettu vain oppimis- ja tutkimustarkoituksiin; Yllä mainittua sisältöä ei saa käyttää kaupallisiin tai laittomiin tarkoituksiin, muuten käyttäjät joutuvat kantamaan kaikki seuraukset. Tämän sivuston tiedot ovat peräisin internetistä, eikä tekijänoikeuskiistat liity tähän sivustoon. Sinun tulee poistaa yllä oleva sisältö kokonaan tietokoneeltasi 24 tunnin kuluessa lataamisesta. Jos pidät ohjelmasta, tue aitoa ohjelmistoa, osta rekisteröityminen ja hanki parempia aitoja palveluita. Jos rikkomuksia ilmenee, ota meihin yhteyttä sähköpostitse.

Mail To:help@itsvse.com