php redis存储位置,redis数据保存在哪里
redis的數(shù)據(jù)是存在內(nèi)存里嗎?
首先要明白redis是一個數(shù)據(jù)庫,redis是一個內(nèi)存數(shù)據(jù)庫,所有數(shù)據(jù)基本上都存在于內(nèi)存當中,會定時以追加或者快照的方式刷新到硬盤中。 (推薦學習:Redis視頻教程)
由于redis是一個內(nèi)存數(shù)據(jù)庫,所以讀取寫入的速度是非常快的,所以經(jīng)常被用來做數(shù)據(jù),頁面等的緩存。
Redis最為常用的數(shù)據(jù)類型主要有以下:
String
Hash
List
Set
Sorted set
pub/sub
Transactions
首先Redis內(nèi)部使用一個redisObject對象來表示所有的key和value,redisObject最主要的信息如上所示:
type代表一個value對象具體是何種數(shù)據(jù)類型,encoding是不同數(shù)據(jù)類型在redis內(nèi)部的存儲方式。
比如:type=string代表value存儲的是一個普通字符串,那么對應的encoding可以是raw或者是int,如果是int則代表實際redis內(nèi)部是按數(shù)值型類存儲和表示這個字符串的,當然前提是這個字符串本身可以用數(shù)值表示,比如:"123" "456"這樣的字符串。
這里需要特殊說明一下vm字段,只有打開了Redis的虛擬內(nèi)存功能,此字段才會真正的分配內(nèi)存,該功能默認是關(guān)閉狀態(tài)的。
我們可以發(fā)現(xiàn)Redis使用redisObject來表示所有的key/value數(shù)據(jù)是比較浪費內(nèi)存的,當然這些內(nèi)存管理成本的付出主要也是為了給Redis不同數(shù)據(jù)類型提供一個統(tǒng)一的管理接口,實際作者也提供了多種方法幫助我們盡量節(jié)省內(nèi)存使用。
更多Redis相關(guān)技術(shù)文章,請訪問Redis入門教程欄目進行學習!
總結(jié)
以上是生活随笔為你收集整理的php redis存储位置,redis数据保存在哪里的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: mysql load average_紧
- 下一篇: discuz和php的关系,UCente