A korábban írt zk-alapú elosztott zár a következő:
A Redis megvalósítja az elosztott zárolás elvét:
A Redis elosztott zárainak megvalósításának elve az, hogy a redis SETNX parancsát hívjuk, és ha a kulcs már létezik, a SETNX parancs semmit sem csinál. A parancs 1-et, ha a beállítás sikeres, és 0-ot, ha a beállítás nem működik.
Először a weboldalunk 10 000 terméket szimulál, majd egy konzolt ír, amely HTTP kérést szimulál, és a vásárlás teljesítése 40 másodpercet vesz igénybe, a renderelés a következő:
Létrehozz egy új weboldalt a Core 3.1 ASP.NET és a redis lock csomag a következő:
Láttam, hogy sok internetes feloldási zár a következőképpen van írva:
Ugyanakkor úgy tűnik, hogy probléma lehet, ha egyidejű állapotban vissza lehet adni az igazságot az ítélet pillanatában, ez valóban önálló zár, de amikor a zárat töröljük, lehet, hogy bekerülSzélsőséges esetekben, a zárat egy másik szál szerezte meg, arra az esetre, ha valaki más zárja törlik.
Ezért zár beszerzésekor egy szálat kell kinyitnod, hogy meghosszabbítsd a zár lejárati idejét.
A WeatherForecastController interfésze a következő:
Az API weboldalt a parancssoron keresztül indíthatod el, amely könnyen újraindítható az alábbiak szerint:
Hozz létre egy új .NET Core HTTP makett kérést a snap vásárláshoz, a kód a következő:
Ha valami baj van, köszönöm, hogy kijavítottad.
Végül csatoljuk a forráskódot:
Turisták, ha szeretnétek megnézni ennek a bejegyzésnek a rejtett tartalmát, kérlek Válasz
|