首頁  >  文章  >  資料庫  >  redis預設過期時間是多少

redis預設過期時間是多少

silencement
silencement原創
2019-06-04 15:22:4823314瀏覽

redis預設過期時間是多少

1.Redis資料庫介紹

redis資料庫是一種基於記憶體可持久化的鍵值對非關係性資料庫。為了確保效率,redis的資料都是緩存在記憶體中的,區別的是redis會週期性的把更新的資料寫入磁碟或把修改操作寫入追加的記錄文件,並且在此基礎上實現了master- slave(主從)同步。

Redis支援主從同步。資料可以從主伺服器向任意數量的從伺服器上同步,從伺服器可以是關聯其他從伺服器的主伺服器。這使得Redis可執行單層樹複製。記憶體可以有意無意的對資料進行寫入操作。由於完全實現了發布/訂閱機制,使得從資料庫在任何地方同步樹時,可訂閱一個頻道並接收主伺服器完整的訊息發布記錄。同步對讀取操作的可擴充性和資料冗餘很有幫助。

Redis是基於記憶體管理的資料庫,所以記憶體開銷方面需要進一步優化:

①.首先最重要的一點是不要開啟Redis的VM選項,即虛擬記憶體功能,這個本來是作為Redis儲存超出實體記憶體資料的一種資料在記憶體與磁碟換入換出的持久化策略,但是其記憶體管理成本也非常的高,且我們後續將分析此種持久化策略並不成熟,所以要關閉VM功能,請檢查你的redis.conf檔中vm-enabled 為no。

②.其次最好設定下redis.conf中的maxmemory選項,該選項是告訴Redis當使用了多少物理內存後就開始拒絕後續的寫入請求,該參數能很好的保護好你的Redis不會因為使用了過多的實體記憶體而導致swap,最終嚴重影響效能甚至崩潰。

③.如果在Redis內部儲存的大部分資料是數值型的話,Redis內部採用了一個shared integer的方式來省去分配記憶體的開銷,即在系統啟動時先分配一個從1~ n 那麼多個數值對象放在一個池子中,如果存儲的數據恰好是這個數值範圍內的數據,則直接從池子裡取出該對象,並且通過引用計數的方式來共享,這樣在系統存儲了大量數值下,也能一定程度上節省記憶體並且提高效能

2.redis資料儲存位置

我們知道redis是基於記憶體儲存資料的,那麼資料在掉電後會造成資料遺失,我們也可以透過設定產生相關的日誌文件以及將資料在磁碟進行備份。這樣下次開機是可以確保資料仍然可以拿到。

3.redis資料庫常用資料型別已經相關操作

過期時間設定常用操作:

EXPIRE 將key的生存時間設定為ttl秒

PEXPIRE 將key的生成時間設定為ttl毫秒

EXPIREAT 將key的過期時間設定為timestamp所代表的的秒數的時間戳

#PEXPIREAT 將key的過期時間設定為timestamp所代表的的毫秒數的時間戳記

以上是redis預設過期時間是多少的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn

相關文章

看更多