0.前言 Redis目前熱門NoSQL內存數據庫,代碼量不是很大,本系列是本人閱讀Redis源碼時記錄的筆記,由於時間倉促和水平有限,文中難免會有錯誤之處,歡迎讀者指出,共同學習進步,本文使用的Redis版本是2.8.19。 1.數據結構篇 Redis之Hash數據結構 http ...
Redis io抽象層 Redis中涉及到多種io,如socket與file,為了統一對它們的操作,redis設計了一個抽象層,即rio,使用rio可以實現將數據寫入到不同的底層io,但是接口相同。rio的實現在rio.h與rio.c源文件中,支持內存 文件 socket集合三類底層io。 . struct rio struct rio中聲明了統一的io操作接口,並且包含一個底層io對象的unio ...
2019-10-06 11:04 0 323 推薦指數:
0.前言 Redis目前熱門NoSQL內存數據庫,代碼量不是很大,本系列是本人閱讀Redis源碼時記錄的筆記,由於時間倉促和水平有限,文中難免會有錯誤之處,歡迎讀者指出,共同學習進步,本文使用的Redis版本是2.8.19。 1.數據結構篇 Redis之Hash數據結構 http ...
https://opentalk.upyun.com/277.html Redis 這個東西很簡單,懂 C 語言的同學花一個下午,可以把它的來龍去脈都研究懂。但是,它麻雀雖小五臟俱全。一個常見的軟件,比如 Redis,跑起來該用的東西可能都用一些,如果我們把 Redis 搞懂了,要分析一款 ...
一、ziplist簡介 從上一篇分析我們知道quicklist的底層存儲使用了ziplist(壓縮列表),由於壓縮列表本身也有不少內容,所以重新開了一篇,在正式源碼之前,還是先看下ziplist的特點: 1. ziplist是一種特殊編碼的雙向列表,特殊編碼是為了節省存儲空間。 2. ...
一、quicklist簡介 Redis列表是簡單的字符串列表,按照插入順序排序。你可以添加一個元素到列表的頭部(左邊)或者尾部(右邊)。 一個列表最多可以包含 232 - 1 個元素 (4294967295, 每個列表超過40億個元素)。 其底層實現所依賴的內部數據結構就是quicklist ...
轉載自:http://blog.chinaunix.net/uid-790245-id-3766842.html 在文章的開頭我們把所有服務端文件列出來,並且標示出其作用: adlist.c ...
上一篇分析了BeanFactory體系的2個類,SimpleAliasRegistry和DefaultSingletonBeanRegistry—— Spring源碼分析——BeanFactory體系之抽象類、類分析(一),今天繼續分析。 一、工廠Bean注冊支持 ...
上一篇介紹了BeanFactory體系的所有接口——Spring源碼分析——BeanFactory體系之接口詳細分析,本篇就接着介紹BeanFactory體系的抽象類和接口。 一、BeanFactory的基本類體系結構(類為主): 上圖可與 Spring源碼分析 ...