Dubbo - 远程debug

  • 由于Dubbo的特性是远程调用,因此正常来说无法在本地进行debug

    • 因为你调用的方法在别台机器上跑,你只能知道给他的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


  • 2
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值