原文:Redis 的源碼分析

https: opentalk.upyun.com .html Redis 這個東西很簡單,懂 C 語言的同學花一個下午,可以把它的來龍去脈都研究懂。但是,它麻雀雖小五臟俱全。一個常見的軟件,比如 Redis,跑起來該用的東西可能都用一些,如果我們把 Redis 搞懂了,要分析一款其他的軟件,思路可能也是差不多的,所以我借這個機會,跟大家分享一下我們解剖一個軟件的過程。 和大家分享 Redis,主 ...

2018-07-11 15:49 0 789 推薦指數:

查看詳情

Redis源碼分析系列

0.前言   Redis目前熱門NoSQL內存數據庫,代碼量不是很大,本系列是本人閱讀Redis源碼時記錄的筆記,由於時間倉促和水平有限,文中難免會有錯誤之處,歡迎讀者指出,共同學習進步,本文使用的Redis版本是2.8.19。 1.數據結構篇   Redis之Hash數據結構   http ...

Thu Oct 29 05:51:00 CST 2015 3 1550
Redis之quicklist源碼分析

一、quicklist簡介 Redis列表是簡單的字符串列表,按照插入順序排序。你可以添加一個元素到列表的頭部(左邊)或者尾部(右邊)。 一個列表最多可以包含 232 - 1 個元素 (4294967295, 每個列表超過40億個元素)。 其底層實現所依賴的內部數據結構就是quicklist ...

Sat Apr 18 21:47:00 CST 2020 0 622
Redis源碼簡要分析

轉載自:http://blog.chinaunix.net/uid-790245-id-3766842.html 在文章的開頭我們把所有服務端文件列出來,並且標示出其作用: adlist.c ...

Tue Mar 04 19:18:00 CST 2014 0 3700
Redis之ziplist源碼分析

一、ziplist簡介 從上一篇分析我們知道quicklist的底層存儲使用了ziplist(壓縮列表),由於壓縮列表本身也有不少內容,所以重新開了一篇,在正式源碼之前,還是先看下ziplist的特點: 1. ziplist是一種特殊編碼的雙向列表,特殊編碼是為了節省存儲空間。 2. ...

Sun Apr 19 23:28:00 CST 2020 0 676
Redis學習之SDS源碼分析

一.SDS的簡單介紹 SDS:簡單動態字符串(simple dynamic string) 1)SDS是Redis默認的字符表示,比如包含字符串值的鍵值對都是在底層由SDS實現的 2)SDS用來保存數據庫中的字符串值 3)SDS被用作緩沖區:比如AOF模塊的AOF緩沖區,以及客戶端 ...

Sat Apr 20 18:53:00 CST 2019 0 1200
[源碼分析] OpenTracing之跟蹤Redis

[源碼分析] OpenTracing之跟蹤Redis 目錄 [源碼分析] OpenTracing之跟蹤Redis 0x00 摘要 0x01 總體邏輯 1.1 相關概念 1.2 埋點插件 1.3 總體 ...

Sat Sep 12 22:32:00 CST 2020 0 647
Redis 5設計與源碼分析》筆記

多名專家聯袂推薦,資深專家聯合撰寫,深入理解Redis 5設計精髓。本書系統講解Redis 5設計、數據結構、底層命令實現,以及持久化、主從復制、集群的實現。全書分為三篇,共計22章內容。第一篇,重點講解了SDS、跳躍表、壓縮列表、字典、整數集合、quicklist和Stream數據結構的實現 ...

Wed Oct 14 17:05:00 CST 2020 0 412
Redis網絡模型的源碼分析

Redis的網絡模型是基於I/O多路復用程序來實現的。源碼中包含四種多路復用函數庫epoll、select、evport、kqueue。在程序編譯時會根據系統自動選擇這四種庫其中之一。下面以epoll為例,來分析Redis的I/O模塊的源碼。 epoll系統調用方法 Redis網絡事件處理模塊 ...

Sat Jul 25 23:51:00 CST 2020 0 639
 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM