您好,登錄后才能下訂單哦!
這篇文章給大家分享的是有關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數據庫的簡單介紹就分享到這里了,希望以上內容可以對大家有一定的幫助,讓大家可以學到更多知識。如果覺得文章不錯,可以把它分享出去讓更多的人看到吧!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。