redis開發與運維-筆記

1. SDS數據結構

SDS本身維護了一個字段的長度。獲取獲取字符串長度的效率是O(1);安全

在字符串拼接的時候,若是空間不夠,就會去申請。數據結構

修改字符串長度帶來修改次數問題:
申請空間:當小於1M時,申請字符串一樣長度的空間。
當大於1M時,申請超過1M的空間。
將申請內存次數,有申請N次,改成最多申請N次。內存

惰性刪除:
在刪除數據的時候,不會把空間收回。而是會從新整合空間,能夠方便後續的數據插入。字符串

二進制安全:
由於記錄了字符串的長度len,因此‘0’ 不會對字符串進行截斷。效率

sds也能夠使用c語言的類庫,避免本身重複造輪子。二進制

相關文章
相關標籤/搜索