Kunci terdistribusi berbasis zk yang ditulis sebelumnya adalah sebagai berikut:
Redis menerapkan prinsip penguncian terdistribusi:
Prinsip penerapan kunci terdistribusi di Redis adalah memanggil perintah SETNX redis, dan jika kuncinya sudah ada, perintah SETNX tidak melakukan apa-apa. Perintah mengembalikan 1 saat pengaturan berhasil dan 0 saat pengaturan gagal.
Pertama, situs web kami mensimulasikan 10.000 produk, dan kemudian menulis konsol yang mensimulasikan permintaan HTTP, yang membutuhkan waktu 40 detik untuk menyelesaikan pembelian, renderingnya adalah sebagai berikut:
Buat situs web baru ASP.NET Core 3.1, dan paket kunci redis adalah sebagai berikut:
Saya melihat bahwa banyak kunci rilis di Internet ditulis sebagai berikut:
Namun, rasanya mungkin ada masalah, dalam kasus konkurensi, dimungkinkan untuk mengembalikan benar pada saat penilaian, itu memang kunci yang ditambahkan dengan sendirinya, tetapi ketika kunci dihapus, itu mungkin ada diDalam kasus ekstrim, kunci telah diperoleh oleh utas lain, jika kunci orang lain dihapus.
Oleh karena itu, saat mendapatkan kunci, Anda perlu membuka ulir untuk memperpanjang waktu kedaluwarsa kunci.
Antarmuka WeatherForecastController adalah sebagai berikut:
Anda dapat memulai situs web API melalui baris perintah, yang dapat dengan mudah dimulai ulang, sebagai berikut:
Buat permintaan HTTP mockup .NET Core baru untuk pembelian snap, kodenya adalah sebagai berikut:
Jika ada yang salah, terima kasih telah memperbaikinya.
Terakhir, lampirkan kode sumber:
Wisatawan, jika Anda ingin melihat konten tersembunyi dari posting ini, silakan Jawab
|