簡單介紹redis加鎖常用幾種方式
這篇文章主要介紹了淺談redis加鎖常用幾種方式,文中透過示例程式碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧 |
一、incr加鎖
connect('127.0.0.1'); $redis->multi(); $redis->incr('number'); //$redis->decr('number'); //$redis->expire('number', -1); var_dump($redis->get('number')); var_dump($redis->ttl('number'));
二、setnx加鎖
setnx('name', 'felix'); var_dump($redis->get('name')); var_dump($redis->ttl('name'));
三、set加鎖
set('like', 'chuangxi', ['nx', 'ex' => 10]); //$redis->del('like'); var_dump($redis->get('like')); var_dump($redis->ttl('like'));
四、防止死鎖
set('like', 'a', ['nx', 'ex' => 10]); if($isLock) { if($redis->get('like') == 'a') { //執行邏輯 $redis->del('like'); continue; } } else { usleep(5000); } } while (!$isLock); //redis事務 $redis->set(); $redis->watch(['number', 'like']);
到此這篇關於淺談redis加鎖常用幾種方式的文章就介紹到這了,感謝大家的支援。
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/31559985/viewspace-2748345/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- js宣告陣列的幾種方式簡單介紹JS陣列
- 設定按鈕失效的幾種方式簡單介紹
- 網頁中使用css的幾種方式簡單介紹網頁CSS
- redis加鎖的幾種實現Redis
- javascript中常用的幾種彈出視窗簡單介紹JavaScript
- 分散式鎖簡單入門以及三種實現方式介紹分散式
- 簡單介紹mysql中資料庫覆蓋匯入的幾種方式MySql資料庫
- 將按鈕設定為不可用幾種方式簡單介紹
- Oracle鎖簡單介紹Oracle
- ORACLE 鎖簡單介紹Oracle
- 實現js檔案動態載入的幾種方式簡單介紹JS
- 簡單介紹Go語言常用的打log方式Go
- Oracle 鎖簡單介紹(轉)Oracle
- Oracle鎖簡單介紹(轉)Oracle
- 簡單介紹MySQL索引失效的幾種情況MySql索引
- javascript函式宣告兩種主要方式簡單介紹JavaScript函式
- 簡單介紹MySQL開啟事務的兩種方式MySql
- SQL隱碼攻擊的檢測方式有幾種?常用方法介紹!SQL
- HTML中使用CSS的幾種方式介紹HTMLCSS
- 幾種常見網路抓包方式介紹
- 簡單介紹redis分散式鎖解決表單重複提交的問題Redis分散式
- Java中幾種常用的RPC框架介紹JavaRPC框架
- javascript函式呼叫方式簡單介紹JavaScript函式
- redis兩種持久化方式的優缺點介紹Redis持久化
- 幾種常用設計模式的簡單示例設計模式
- redis的簡單使用和介紹(轉載)Redis
- javascript呼叫函式的方式簡單介紹JavaScript函式
- javascript實現繼承方式簡單介紹JavaScript繼承
- alertify提示外掛使用方式簡單介紹
- 簡單介紹python連線telnet和ssh的兩種方式Python
- 提高jquery效能的常用技巧簡單介紹jQuery
- jQuery常用的動畫函式簡單介紹jQuery動畫函式
- 常用鎖原理的介紹(上)
- Redis持久化的兩種方式的優缺點介紹Redis持久化
- javascript中的就加號+的用法簡單介紹JavaScript
- js 加號+運算子字串連線簡單介紹JS字串
- js中關於定義類的幾種方式介紹JS
- html5幾個簡單語法規則簡單介紹HTML