Pekerjaan terjadwal
Cron yang sama berjalan di setiap instance, dan kunci memastikan tepat satu dari mereka yang mengerjakannya.
Pastikan hanya satu worker yang menjalankan pekerjaan pada satu waktu, dengan kunci yang kedaluwarsa sendiri dan dilepas dengan aman oleh pemiliknya.
NX mengambilnya hanya jika tidak ada yang memegang. PX 30000 membuatnya kedaluwarsa dalam 30 detik jika A mati.
Panduan beranimasi dengan perintah HotKV yang sebenarnya dan balasan contoh. Klik langkah mana pun untuk melompat ke sana. Perintah dan balasan tetap dalam bahasa Inggris, persis seperti yang Anda ketik dan lihat di HotKV.
Cron job di beberapa mesin, penangkapan pembayaran, dan pembangunan ulang cache tidak boleh berjalan dua kali sekaligus. Kunci tanpa kedaluwarsa ditahan selamanya ketika pemiliknya crash, dan melepas kunci dengan DEL biasa dapat menghapus kunci milik orang lain setelah kunci Anda kedaluwarsa.
SET dengan NX dan PX memperoleh kunci hanya jika tidak ada yang memegangnya, dan memberinya kedaluwarsa agar pemilik yang crash tidak dapat menahannya selamanya. Setiap pemilik menyimpan token acak sebagai nilai. DELEX dengan IFEQ menghapus kunci hanya jika masih berisi token Anda, yaitu pelepasan aman yang dulu memerlukan skrip Lua.
NX mengambilnya hanya jika tidak ada yang memegang. PX 30000 membuatnya kedaluwarsa dalam 30 detik jika A mati.
SET lock:billing-run tok-a81f NX PX 30000Kunci sedang dipegang, jadi B mendapat nil dan melewati eksekusi ini.
SET lock:billing-run tok-b22c NX PX 30000Hanya satu worker yang menjalankan pekerjaan penagihan.
PTTL lock:billing-runDELEX menghapus kunci hanya jika nilainya masih token A.
DELEX lock:billing-run IFEQ tok-a81fJika A terlalu lambat dan B kini memegang kunci, pelepasan oleh A akan membiarkan kunci B.
DELEX lock:billing-run IFEQ tok-staleCron yang sama berjalan di setiap instance, dan kunci memastikan tepat satu dari mereka yang mengerjakannya.
Operasi penangkapan dan pengembalian dana pada satu pesanan diserialkan agar tidak pernah tumpang tindih.
Hanya satu permintaan yang membangun ulang entri cache yang mahal sementara yang lain menunggu atau menyajikan nilai basi.
SET NX PX mengambil kunci hanya jika bebas, dengan timeout.
SETNXPXDELEX IFEQ menghapus hanya jika nilainya cocok dengan token Anda.
DELEXPeriksa waktu tersisa dan perpanjang untuk pekerjaan panjang.
PTTLPEXPIREUntuk nilai besar, DELEX IFDEQ membandingkan digest, bukan seluruh nilai.
DIGESTIFDEQJika kunci Anda kedaluwarsa dan worker lain mengambilnya, DEL biasa akan menghapus kunci mereka. DELEX IFEQ hanya menghapusnya selama masih berisi token Anda.
Lebih lama dari waktu yang biasanya diperlukan pekerjaan. Untuk pekerjaan panjang, perpanjang kedaluwarsa secara berkala selama Anda masih memegang kunci.
Tidak. DELEX melakukan perbandingan dan penghapusan dalam satu perintah.
HotKV berbicara protokol Redis, jadi Anda dapat mengarahkan klien yang sudah ada ke HotKV dan menjalankan perintah yang sama.