新聞中心
隨著企業(yè)的大力度投入和發(fā)展,數(shù)據(jù)的分析、存儲和使用越來越重要。隨著企業(yè)跨系統(tǒng)的業(yè)務(wù)遷移或者特殊需求,原本基于關(guān)系型數(shù)據(jù)庫的應(yīng)用現(xiàn)在也開始移植到基于NoSQL的多種數(shù)據(jù)庫之中,而Redis也是其中的主要代表。其作為一個內(nèi)存數(shù)據(jù)庫,性能高、延遲低、數(shù)據(jù)持久化特性等在各類應(yīng)用中的普及,已經(jīng)無需多言。但是隨著Redis的業(yè)務(wù)量和數(shù)據(jù)量的增大,Redis的監(jiān)控和安全也成為了重要的話題。

創(chuàng)新互聯(lián)堅持“要么做到,要么別承諾”的工作理念,服務(wù)領(lǐng)域包括:成都網(wǎng)站設(shè)計、做網(wǎng)站、企業(yè)官網(wǎng)、英文網(wǎng)站、手機(jī)端網(wǎng)站、網(wǎng)站推廣等服務(wù),滿足客戶于互聯(lián)網(wǎng)時代的修武網(wǎng)站設(shè)計、移動媒體設(shè)計的需求,幫助企業(yè)找到有效的互聯(lián)網(wǎng)解決方案。努力成為您成熟可靠的網(wǎng)絡(luò)建設(shè)合作伙伴!
其中,如何解決Redis的過期觸發(fā)速度極慢的問題也是一個大家關(guān)心的問題。根據(jù)Redis的文檔,Redis中實現(xiàn)憐過期機(jī)制的是 Keyspace events,它每秒檢查16次。這意味著,如果過期時間很短(比如1s或需要實時刪除),當(dāng)前就會容易出現(xiàn)“漏掉”過期記錄的現(xiàn)象,也就是過期時間觸發(fā)偏慢的情況。
為了解決Redis的過期觸發(fā)速度極慢的問題,我們可以采用以下幾種措施:
1. 使用lua腳本重寫Redis的del操作,并監(jiān)聽指定鍵空間的事件,在每次事件捕獲時過濾已經(jīng)過期key,達(dá)到實時刪除的效果。
例如【delExpired.lua】腳本:
local keys = redis.call("keys",#KEYS[1])
for i,key in iprs(keys) do
local expires_at = redis.call("get",KEYS[1]..":"..key..":expires_at")
if expires_at
redis.call("del",KEYS[1]..":"..key)
end
end
2. 使用redis間隔定時器功能,定義一個定時事件,定時刪除過期記錄。
127.0.0.1:6379> config set notify-keyspace-events Ex
127.0.0.1:6379> setex myKey 5 "Hello World!"
127.0.0.1:6379> config set notification-script myDelExpired.lua
例如【myDelExpired.lua】腳本:
local key = KEYS[1]
local expires_at = redis.call("get", key..":expires_at")
if expires_at ~= "-1" and tonumber(expires_at)
redis.call("del", key)
end
以上兩種方式都可以有效解決Redis的過期觸發(fā)速度極慢的問題,從而滿足企業(yè)對記錄數(shù)據(jù)的要求。
此外,為了實現(xiàn)Redis的過期觸發(fā)速度極慢的問題,我們也可以在Redis服務(wù)器端進(jìn)行TTL操作,或者手動配置Redis主要參數(shù),比如maxmemory-samples、notify-keyspace-event及dbfilename等,以達(dá)到優(yōu)化過期觸發(fā)速度的效果。
Redis過期觸發(fā)速度極慢是一個被企業(yè)高度關(guān)注的問題,為了保證數(shù)據(jù)的實時性,應(yīng)當(dāng)多方考慮采取解決方案,比如腳本編程、定時任務(wù)及參數(shù)調(diào)整等。
香港服務(wù)器選創(chuàng)新互聯(lián),2H2G首月10元開通。
創(chuàng)新互聯(lián)(www.cdcxhl.com)互聯(lián)網(wǎng)服務(wù)提供商,擁有超過10年的服務(wù)器租用、服務(wù)器托管、云服務(wù)器、虛擬主機(jī)、網(wǎng)站系統(tǒng)開發(fā)經(jīng)驗。專業(yè)提供云主機(jī)、虛擬主機(jī)、域名注冊、VPS主機(jī)、云服務(wù)器、香港云服務(wù)器、免備案服務(wù)器等。
當(dāng)前名稱:警惕Redis過期觸發(fā)速度極慢(redis過期觸發(fā)太慢了)
鏈接地址:http://m.jiaoqi3.com/article/cogpscs.html


咨詢
建站咨詢
