Redis 內存占用量估算


string類型的內存大小 = 鍵值個數 * (dictEntry大小 + redisObject大小 + 包含key的sds大小 + 包含value的sds大小) + bucket個數 * 4

注意如果key或者value的字符串長度+9字節超過16字節,則實際申請的內存大小32字節.

如果key或者value的字符串長度+9字節超過16字節,則實際申請的內存大小32字節

對於1w個key如果rehash過后就需要16384個bucket.

下面是我們的預估值,100萬來算,key的sds大小為32,value的sds大小為32

1000000 * (16 + 16 + 32 + 32) + 1638400 * 4 = 102,553,600

1G內存為1073741824字節,so 100萬條大概是 100M 內存

沒有實際測算,只是根據下面參考算了下

參考:https://www.oschina.net/question/12_31910


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM