I. 前言
好久沒寫博客了,Markdown都有些生疏了,慚愧!
終於又看起源碼了,其實大論文還有好多沒寫,但我就是喜歡在該幹些什麼的時候跑去幹點別的…
這次準備對Dubbo下手了,好好研究一下,預覽了一下感覺看完會有很多收穫,特徵是對Spring源碼的理解可能更加深入。挺想在中間件那種團隊,高大上的軟件設計,不被業務所拘泥。
II. 環境準備
- 系統:Mac OS
- IDEA 2018.3 (好久沒更新了…)
- Java1.8 Maven 3.5.2 (最好配一下阿里雲鏡像…)
- ZooKeeper 3.6.0
- Dubbo源碼:https://github.com/apache/dubbo
- 註釋源碼:https://github.com/MrSorrow/dubbo
III. 環境搭建
克隆源碼
- 將官方倉庫Fork到自己的倉庫。當然不Fork也行,直接下載一份源碼本地看也沒問題。
- 克隆源碼到本地倉庫。
導入IDEA
Dubbo官網本身指導我們下載完源碼本地使用Maven命令行構建,再生成IDEA工程結構導入。對於本人那種迫不及待的心情,根本沒有參照官方指南,直接導入了,其實是一樣的,這裏演示一下。
首先看一下本人下載的源碼:
打開IDEA,點擊File==》New==》Project From Existing Sources…,選擇好本地倉庫,這裏直接選擇Dubbo工程根目錄的pom文件即可,點擊Open。
OK,開始配置工程,記得設置環境裏配好自己Maven環境。
好了,一路Next工程導入成功。等待一會兒,顯示出IDEA工程目錄如下:
這裏如果右側Maven窗口中大片報紅,說明jar包下載有問題。本人做法比較暴力,將Maven倉庫刪了,重新導入工程讓他下載,所以爲什麼要配阿里雲鏡像倉庫,下載速度快。但可能還是會報紅,顯示一些Maven Plugin未下載成功問題,這些可能需要翻牆,本人在一些基本的jar包下載完,打開翻牆後下載完Maven插件,就全部沒問題了。
clean&install
找到dubbo-parent工程,上面顯示了root。進行clean和install。
install之前記得跳過測試,IDEA中選中那個閃電按鈕即可!
至此,源碼閱讀環境就搭建好了。
IV. 測試代碼
註冊中心
這裏使用ZK當註冊中心,官網下載一份ZK,準備啓動。記得配置好zoo.conf
文件。
切換到ZK的目錄,命令行啓動ZK。
bin/zkServer.sh start
啓動Provider
看圖,找到demo模塊的provider並註冊到註冊中心。
運行Consumer
看圖,找到demo模塊下的consumer進行rpc調用。
總結
OK,環境搭建完成,比Spring要簡單多了!
四月啦,離畢業還有一點點時間了,加油,博客更新起來!!!