文章詳情頁
redis和memcached是不是存儲多少空間就占多少內(nèi)存?
瀏覽:120日期:2024-07-09 17:00:25
問題描述
這些內(nèi)存數(shù)據(jù)庫都是把數(shù)據(jù)放到內(nèi)存里,作為緩存的話,是不是存儲多少內(nèi)容就占用多少內(nèi)存呢?
比如我的Linux服務(wù)器是2G內(nèi)存的,那使用他們作為緩存數(shù)據(jù)庫,就不能緩存超過2G的內(nèi)容呢?
問題解答
回答1:不是存多少占用多少內(nèi)存。
memcached的緩存機(jī)制memcached使用的是 Slab Allocation內(nèi)存分配機(jī)制,可以看下這篇文章Memcached的數(shù)據(jù)存儲方式這種機(jī)制有個缺點,將分配的內(nèi)存分割成特定長度的塊(chuck),例如:將70字節(jié)的數(shù)據(jù)存放到88字節(jié)的塊,就造成了18字節(jié)的浪費
內(nèi)存分配流程
redis 的有需要或后續(xù)再補(bǔ)上.
回答2:是的。因為它們是基于內(nèi)存的數(shù)據(jù)庫。
雖然可以改造成利用磁盤緩存一部分?jǐn)?shù)據(jù),但這樣做就失去它自身的意義了。
相關(guān)文章:
1. 在應(yīng)用配置文件 app.php 中找不到’route_check_cache’配置項2. html按鍵開關(guān)如何提交我想需要的值到數(shù)據(jù)庫3. HTML 5輸入框只能輸入漢字、字母、數(shù)字、標(biāo)點符號?正則如何寫?4. javascript - 請教如何獲取百度貼吧新增的兩個加密參數(shù)5. gvim - 誰有vim里CSS的Indent文件, 能縮進(jìn)@media里面的6. 跟著課件一模一樣的操作使用tp6,出現(xiàn)了錯誤7. PHP類屬性聲明?8. javascript - JS請求報錯:Unexpected token T in JSON at position 09. objective-c - ios 怎么實現(xiàn)微信聯(lián)系列表 最好是swift10. java - 安卓接入微信登錄,onCreate不會執(zhí)行
排行榜

熱門標(biāo)簽