第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

在不影響性能的情況下,怎么快速批量刪除redis數(shù)據(jù)?

在不影響性能的情況下,怎么快速批量刪除redis數(shù)據(jù)?

溫溫醬 2019-04-13 08:45:32
業(yè)務(wù)場景:redis數(shù)據(jù)切換到Oracle,取消持久化,redis只做緩存具體需求:從redis從庫里獲得了400w個無過期時間的hashkey,需要在主庫中將其刪除矛盾點:1.如果直接批量刪除會導(dǎo)致redis擁塞,影響正常業(yè)務(wù)2.如果每刪除一個key,sleep50ms,不會影響業(yè)務(wù),但是根據(jù)經(jīng)驗要跑兩天最終問題:在不影響性能的情況下,怎么快速批量刪除redis數(shù)據(jù)?
查看完整描述

2 回答

?
慕桂英4014372

TA貢獻1871條經(jīng)驗 獲得超13個贊

Redis刪key刪得飛快,400w也不在話下。我懷疑其實瓶頸在于網(wǎng)絡(luò)。
如果你是一個一個key刪的,每次發(fā)送一個命令都會導(dǎo)致客戶端等待redis的回復(fù),浪費了大量網(wǎng)絡(luò)帶寬。
可以試試用pipelining/transactions。在不飽和redis端網(wǎng)絡(luò)帶寬的前提下,以最大速度發(fā)送命令,然后一次執(zhí)行。
如果這都不行的話,可以寫一個Lua腳本,識別并刪除無用的key,發(fā)送到redis用eval執(zhí)行。這樣應(yīng)該不會阻塞網(wǎng)絡(luò)。
如果這樣還是影響業(yè)務(wù)的話。。終極解決方案是創(chuàng)建一個master/slave,在slave上刪除key,而將請求用master處理。刪完key之后把slave晉升成master,再將請求轉(zhuǎn)向它。
                            
查看完整回答
反對 回復(fù) 2019-04-13
  • 2 回答
  • 0 關(guān)注
  • 1014 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學(xué)習(xí)伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號