文章目錄提示:文章寫完后,目錄可以自動生成,如何生成可參考右邊的幫助文檔
創(chuàng)新互聯企業(yè)建站,十余年網站建設經驗,專注于網站建設技術,精于網頁設計,有多年建站和網站代運營經驗,設計師為客戶打造網絡企業(yè)風格,提供周到的建站售前咨詢和貼心的售后服務。對于網站建設、做網站中不同領域進行深入了解和探索,創(chuàng)新互聯在網站建設中充分了解客戶行業(yè)的需求,以靈動的思維在網頁中充分展現,通過對客戶行業(yè)精準市場調研,為客戶提供的解決方案。
Redis基于內存、分布式、可選持久性的鍵值對數據庫,在項目中一般作為緩存來使用,由C語言實現,代碼量不算太大,了解下源碼實現有利于理解Redis底層實現機制,本文嘗試在Liunx環(huán)境下搭建Redis源碼調試環(huán)境
tar -zxvf redis-5.0.14.tar.gz
cd redis-5.0.14
/ 命令進入Redis目錄
執(zhí)行make命令
make命令執(zhí)行完后多出了 幾個文件,redis-server redis-cli,這兩個我們應該比較熟悉了
導入Redis項目
配置C語言編譯環(huán)境,Centos 默認是安裝了gcc的
配置redis-server
在server.c文件上打上斷點 ,debug啟動redis-server就能跟蹤啟動流程了
啟動后進到main方法斷點里面來了
我們先讓啟動流程跑完
啟動成功了,看到了熟悉的打印日志
接下來我們啟動客戶端來執(zhí)行Redis命令
server.c文件中有一個結構體數組,定義了Redis的處理命令
通過 redis-cli連接服務端 執(zhí)行get命令(可以看到這里沒有返回 卡住了 因為服務端有斷點)
Redis項目中經常用,但只知道基本使用,對底層原理不太了解,容易在特殊場景下用錯,研究下源碼有助于理解Redis的執(zhí)行流程,更好的在項目中應用
PS:源碼還沒看懂 還需繼續(xù)學習~~
你是否還在尋找穩(wěn)定的海外服務器提供商?創(chuàng)新互聯www.cdcxhl.cn海外機房具備T級流量清洗系統(tǒng)配攻擊溯源,準確流量調度確保服務器高可用性,企業(yè)級服務器適合批量采購,新人活動首月15元起,快前往官網查看詳情吧