Redis事務的應用業務場景分析

2021-10-13 22:20:30 字數 547 閱讀 4581

業務場景

秒殺問題,如何防止最後一件商品不會被多人同時購買。

解決方案

setnx lock

-key

value

利用setnx命令的返回值特徵,有值則返回設定失敗,無值則返回設定成功。

操作完畢之後,通過del鍵值對來釋放鎖。

業務場景

依賴分布式鎖的機制,某個使用者獲取到鎖,之後沒來得及釋放就掛了,如果解決。

業務分析

解決方案

使用expir為鎖key新增時間限定,到時不釋放,就放棄鎖。

expire lock

-key

second

pexpire lock

-key milliseconds

由於操作通常都是微秒或者毫秒級的, 因此該鎖定時間不宜設定過大,具體時間根據業務設定。

Etcd 與Redis 業務應用場景差異

1.豐富的資料型別 string,hash,set zset,list 等 2.讀寫效能優異 3.單執行緒原子性 4.可持久化 aof rdb 5.支援pub sub 訂閱發布模式 高可用方案 哨兵機制 分布式一致性 redis主從為非同步複製模式,一致性無法保證 多節點資料一致性強依賴網路延遲 主...

Redis事務應用

對於redis事務的應用其實需要靈活使用。其實在實際中可以通過watch一些標記位來保證多執行緒下快取與資料庫資料庫的一致性。我們的系統是分布式快取與資料庫的結合使用,快取需要跟 資料庫的一致性很重要,下面舉例我們應用中的乙個場景 1 帳號為acc,為每個acc在快取中增加乙個tag標識。2 當執行...

Redis分布式鎖在業務場景中的應用

背景描述 公司是做網際網路借貸業務的,前段時間對接了乙個第三方平台,為該平台的使用者提供現金借貸業務。但是,剛上線便發現存在乙個很嚴重的問題,就是在短時間內 毫秒級 同乙個使用者生成了多筆借款,我們的業務場景是要求同乙個使用者針對同一類借款,只可以存在一筆待還借款。經過排查發現第三方平台每次都會在同...