rabbitmq原始碼分析(一)

2021-05-25 05:48:25 字數 624 閱讀 6350

解壓後工程很整齊:

先分析啟動入口點,環境為win7,其實對程式入口點我一直不太了解,感覺erlang程式的入口點沒有固定的,雖然可以通過檔案中的一些東西來分析出來,感覺不方便。

prepare方法是幹什麼的,哦確保時間管理器都安裝了必須的幾個事件處理模組。

上**:

啟動rabbit時呼叫模組中的start/2方法,上**:

start(normal, ) ->

case erts_version_check() of

ok ->

= rabbit_sup:start_link(),

true = register(rabbit, self()),

print_banner(),

[ok = run_boot_step(step) || step <- boot_steps()],

io:format("~nbroker running~n"),

;error ->

error

end.

首先檢查erlang版本,這裡面用到列表解析,充分發揮了erlang的模式匹配。如果版本不低於系統要求的則返回ok,此時呼叫監督樹rabbit_sup:start_link/0方法啟動監督樹。開啟監督樹模組,

rabbitmq原始碼分析(一)

解壓後工程很整齊 先分析啟動入口點,環境為win7,其實對程式入口點我一直不太了解,感覺erlang程式的入口點沒有固定的,雖然可以通過檔案中的一些東西來分析出來,感覺不方便。prepare方法是幹什麼的,哦確保時間管理器都安裝了必須的幾個事件處理模組。上 啟動rabbit時呼叫模組中的start ...

Mangos原始碼分析 一)

mangos 原始碼分析 realmd 登陸伺服器 realmd 主程式 launch the realm server int main int argc,char argv h.add authlistensocket 進行一些引數設定 while stopevent 伺服器主迴圈 return...

testlink原始碼分析 一

testlink是乙個很好的用例管理開源元件,因為我之前也作過乙個用例管理的系統,但是遠沒有testlink靈活,本著學習的態度,自己分析一下testlink的源 一點理解,和大家分享,希望能拋磚引玉。下面來看一下testlink的資料庫設計。1 許可權管理 testlink提供了豐富的許可權管理,...