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 內存
沒有實際測算,只是根據下面參考算了下