工作四年,我学会了用 Idea本地调试线上测试服务器代码
创始人
2025-01-17 10:32:34
0

文章目录

  • 工作四年,我学会了用 Idea本地调试线上测试服务器代码
    • 📆 一.那些辛酸的过往
    • 📕二.远程debug原理
      • 远程调试分类
          • 主动连接调试:
          • 被动连接调试:
    • 👋三.操作步骤
      • 3.1.准备一个简单springboot程序 例如helloworld
      • 3.2.添加远程调试
      • 3.3.配置调试的参数
      • 3.4.新建一个remotoDemo目录,将jar包复制到remotoDemo目录下,在idea中打开终端
      • 3.5.启动jar包
      • 3.6.然后我们启动刚刚配置的remote JVM Debuger
      • 3.7.开始验证
    • 🧣四、最后的话

工作四年,我学会了用 Idea本地调试线上测试服务器代码

工作四年,我学会了用 Idea本地调试线上测试服务器代码

🔊一位 Java 开发者的使用总结,谈使用经验也聊聊工作原理

📆 一.那些辛酸的过往

历历在目的场景🥹(❁´◡❁)(❁´◡❁)

  • 线上出现问题,但是没加日志打印拍脑门惋惜为啥不多打一行日志
  • 加日志重新部署,半小时没了,问题还没有找到,头顶的灯却早已照亮了整层楼…
  • 排查别人线上的 bug,不仅代码还没看懂,还没一行日志,捏了一把汗!
  • 一个问题排查一天,被 Diss 排查问题慢…
  • 那些只能发布才能调试、部署一次要半小时的应用,真的会让生命变得廉价

直到我学会了本地debug线上代码,那些曾经束手无策的问题,都变得轻而易举。于是想把这些遇到的场景和用法做个总结。

📕二.远程debug原理

通过启动本地idea中的remoteDebug,启动后本地remoteDebug程序会与服务器上远程代码建立一个socket连接,当用户访问远程服务器端代码接口时,服务器端会先去判断本地idea中是否有断点,有则停在断点,没有则直接走远程服务器返回结果给用户

image-20231107151344293

远程调试分类

远程调试分为主动连接调试,和被动连接调试。

主动连接调试:

服务端配置监控端口,本地IDE连接远程监听端口进行调试,一般调试问题用这种方式。

被动连接调试:

本地IDE监听某端口,等待远程连接本地端口。一般用于远程服务启动不了,启动时连接到本地调试分析。

👋三.操作步骤

3.1.准备一个简单springboot程序 例如helloworld

写一个controller

image-20231107133958330

打包成jar包

image-20231107134107142

点击配置

image-20231107133905239

3.2.添加远程调试

image-20231107134202148

3.3.配置调试的参数

image-20231107140132091

点击ok,然后我们开始启动jar包

3.4.新建一个remotoDemo目录,将jar包复制到remotoDemo目录下,在idea中打开终端

image-20231107134902563

image-20231107134734328

3.5.启动jar包

java -agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=8888 -jar helloWorld-0.0.1-SNAPSHOT.jar 

如果想后台启动则用

nohup java -agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=8888 -jar helloWorld-0.0.1-SNAPSHOT.jar & 

启动效果图

image-20231107135322101

3.6.然后我们启动刚刚配置的remote JVM Debuger

image-20231107135427209

3.7.开始验证

访问远程服务器接口,注意这里访问的localhost:8888访问的是启动的helloworldjar包,而不是remote监控程序,如果你有远程服务器,则可以将jar包放到服务器上,然后通过服务器ip:端口去访问接口,同样会进入断点

image-20231107135608031

image-20231107135644799

🧣四、最后的话

🖲要成为远程debug的好手,一定多多练习:纸上得来终觉浅,绝知此事要躬行

胖奥特曼悠闲躺着

相关内容

热门资讯

透视真的!wepoker智能辅... 透视真的!wepoker智能辅助插件,wejoker手机版透视脚本(总是真的有挂)透视真的!wepo...
透视安装!wepoker私人局... 透视安装!wepoker私人局透视插件,wejoker辅助脚本(一直是有挂)1、wepoker私人局...
透视美元局!wepoker轻量... 透视美元局!wepoker轻量版书签,wejoker透视方法(总是真的有挂)1、玩家可以在wepok...
辅助透视!wepoker买钻石... 辅助透视!wepoker买钻石有用吗,wepoker买钻石有用吗(确实存在有挂);1、wepoker...
透视ai!wepoker高级辅... 透视ai!wepoker高级辅助,wepoker私人局透视插件(确实真的是有挂)1、进入游戏-大厅左...
透视免费!wepoker免费透... 透视免费!wepoker免费透视脚本,wepoker辅助器安装包(真是真的是有挂);1、进入游戏-大...
透视总结!wepoker脚本,... 透视总结!wepoker脚本,wepoker轻量版透视(本来是有挂)小薇(透视辅助)致您一封信;亲爱...
透视苹果版!wepokerpl... 透视苹果版!wepokerplus作弊,wepoker辅助器(真是存在有挂)1、每一步都需要思考,不...
透视规律!wepoker如何设... 透视规律!wepoker如何设置透视,wepoker俱乐部辅助器(竟然有挂);1、打开软件启动之后找...
透视好牌!wepoker免费脚... 透视好牌!wepoker免费脚本咨询,wepoker有没有挂(真是是有挂)1)wepoker免费脚本...