在上篇《Brave接入ZipKin實現(xiàn)調(diào)用鏈跟蹤【上】》中,我們了解了ZipKin和Brave的相關知識及配置,本文將繼續(xù)介紹Brave的使用。
?Brave使用
DEMO1:AdminConsole提供/app1 Rest接口內(nèi)部通過 HttpClient調(diào)用Service1 ? /service-one, /service-two接口
Service1代碼邏輯:
1、Spring JavaConfig方式配置使用Brave
2、WebConfig:啟用SpringMvc攔截器
3、提供REST接口
AdminConsole工程代碼邏輯:
1、Spring JavaConfig方式配置使用Brave
2、WebConfig:啟用SpringMvc攔截器
3、AppConfig:HttpClient設置攔截器
4、通過AdminConsole /app1 調(diào)用 ? Service1 ? /service-one ? /service-two
5、通過zipKin查看調(diào)用鏈:app-adminconsole->service1
6、通過zipKin查看接口耗時以及調(diào)用鏈tree.
7、App-adminconsole:annotation調(diào)用痕跡 /app1
8、Service1:annotation被調(diào)用痕跡/app1->/service-one, /app1->/service-two,以及調(diào)用鏈
DEMO2:AdminConsole提供/app2 Rest接口內(nèi)部通過 Rpc調(diào)用Service1: ? serviceone!serviceone, ?servicetwo!servicetwo
Service1代碼邏輯:
1、Spring JavaConfig方式配置使用Brave
2、提供RPC接口
3、RpcServerConfig:注冊服務并注冊服務端Brave攔截器
AdminConsole工程代碼邏輯:
1、Spring JavaConfig方式配置使用Brave
2、WebConfig:啟用SpringMvc攔截器
3、RpcClientConfig:Rpc接口代理,并設置客戶端Brave攔截器
4、通過AdminConsole /app2 調(diào)用 ? Service1 ? serviceone ? servicetwo
5、通過zipKin查看調(diào)用鏈:app-adminconsole->service1
6、通過zipKin查看接口耗時以及調(diào)用鏈tree.
7、App-adminconsole:annotation調(diào)用痕跡 ? /app2
8、Service1:annotation被調(diào)用痕跡/app2-> serviceone, /app2->servicetwo,以及調(diào)用鏈
本文作者:秦瑜 Chris.Qin(點融黑幫),來自點融BE Team,2015年10月加入點融,負責多個項目的架構(gòu)與設計,多年大并發(fā)分布式互聯(lián)網(wǎng)架構(gòu)經(jīng)驗。