因爲你調用的方法在別臺機器上跑,你只能知道給他的input和他返回的結果,但沒辦法知道這個接口內部的執行,所以也沒辦法在裡面打斷點進行debug
就算在本地有dubbo代碼,在本地的dubbo代碼打斷點也沒辦法debug,因爲實際上調用的是遠程服務器上的dubbo代碼,而不是本地的dubbo代碼
所以如果要對遠程服務器上的dubbo代碼進行debug,需要進行特別的設置
遠程debug
假設有2臺機器,一臺機器是本地平常寫代碼的機器,另一臺是服務器,專門運行dubbo
首先在dubbo運行的服務器上運行以下指令
100.80.169.72是本地寫代碼的機器的ip
9097是指將dubbo服務透過socket轉發出來的端口 (9097可以換,只要跟idea的配置一致就可以)
socat TCP4-LISTEN:9097,fork,range=100.80.169.72/32 TCP4:127.0.0.1:9015
在本地機器上的idea進行配置
新增一個remote連接
將Host設爲dubbo服務器的ip,Port設爲9097 (只要和TCP-LISTEN的端口一致即可)
如此就可以在本地的dubbo代碼上打斷點,這個斷點位置會透過socket傳到遠程dubbo服務器上,因此我們就可以在本地對遠程的dubbo代碼進行debug
Dubbo - 遠程debug
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.