当前位置: 首页 > news >正文

小城镇建设网站并阐述观点百度开户推广

小城镇建设网站并阐述观点,百度开户推广,建设银行朝阳支行网站,wordpress修改地址背景 有时候我们需要进行远程的debug,本文研究如何进行远程debug,以及使用 IDEA 远程debug的过程中的细节。看完可以解决你的一些疑惑。 配置 远程debug的服务,以springboot微服务为例。首先,启动springboot需要加上特定的参数。…

背景

有时候我们需要进行远程的debug,本文研究如何进行远程debug,以及使用 IDEA 远程debug的过程中的细节。看完可以解决你的一些疑惑。

配置

远程debug的服务,以springboot微服务为例。首先,启动springboot需要加上特定的参数。

启动脚本改造

准备好一个springboot的web测试项目,打包成jar文件,上传远程服务器,修改原来启动脚本。

使用第一步得到的 Command line arguments for remote JVM 即可,即-agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=50055

改造后的启动脚本如下

nohup java \
-agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=50055 \
-jar demo.jar &

注意在windows中用 ^ 来进行换行,例如

java ^
-agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=50055 ^
-jar demo.jar

说明:

1、端口可随意自己定,未被占用的都行,但是要和IDEA里的remote中设置的端口一致!其他参数照抄。详细的参数解释可以参照附录或自己搜

2、demo.jar 改成给你自己的 jar 包名字

3、脚本是后台运行的,如不需要后台运行,自行去掉 nohup 和 &

3、启动远程服务器中的springboot项目

IDEA配置

高低版本的 IDEA 的设置可能界面有点不一样,我用2021.2.1的。大致上差不多,自行摸索。

IDEA打开远程启动的springboot应用程序所对应的

1.选择 Edit Configuration

2.如图,点击加号,选择Remote

3.配置,详细步骤见图 

注意:注意端口别被占用。后续这个端口是用来跟远程的java进程通信的。

可以注意到:切换不同的jdk版本,生成的脚本不一样

选择 jdk1.4,则为

-Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=50055

这就是为什么搜其他博客,会有这种配置的原因,其实这个配置也是可行的。但更准确应该按照下面jdk5-8的配置

选择 jdk 5-8,则为

-agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=50055

选择 jdk9以上,则为

-agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=*:50055

据说因为jdk9变得安全了,远程调试只允许本地,如果要远程,则需要在端口前配置*

IDEA远程调解的细节

1、细节1:停在本地断点,关闭程序后会继续执行吗

如果远程调试在自己的断点处停下来了,此时关闭IDEA中的项目停止运行,则还会继续运行执行完剩下的逻辑吗?会的,这点比较不容易记住

以下面的代码为例,在第一行停住了。然后IDEA中停掉,发现停掉之后控制台还是打印了剩下的日志。

2、细节2:jar包代码和本地不一致会怎么样?

IDEA 里的代码如果不和jar包的一致,会怎么样。

结论:要保证和远程启动的代码一致。

否则你debug的时候的行数会对不上。报错抛异常倒是不会。像这种还是能对得上行数的

比如你调试test1方法,test2方法在test1下面,在test2里加代码,这样并不影响test1中的行号,这种是可以在调试的时候准确反应行号的

3、细节3:日志打印在哪里?

日志不会打印在IDEA的控制台上。即System.out 以及 log.info 还是打印在远程的。

@GetMapping("/test1")
public String test1() {System.out.println("第一行");System.out.println("第二行");log.info("log 第一行");log.info("log 第二行");return "ok";
}

4、细节4:调试时其他人会不会卡住?

远程调试的时候,打了断点,停住后会不会导致页面的请求卡住。

比如你使用远程调试,别的QA在测试这个页面,结果他们看到的结果是怎么样的?会卡住吗?会的,已经实际遇到过这种情况了。

5、细节5:本地代码修复bug远程调用的时候

如果在远程调试过程自己发现了bug,本地改好后重新启动IDEA里的项目,再到页面调用一次,能修复吗?不能,运行的还是远程部署的jar中的代码

这个直接击碎了远程页面点一点触发本地代码进行debug的梦想。如果可以的话那调试代码就方便太多。

6、细节6:这个不算远程调试的问题,是dropframe的问题,放在这里一起讲了

关于drop frame的问题,如果drop frame了重新进行调试,会不会插入2条记录?

如图 userMapper.insert(eo) ,本方法没有使用 @Transactional 修饰,mapper方法执行过后事务会被立即提交,则库表里多了一行记录,如果drop frame后,再次进行调试,再次执行这代码,于是又插入了一条记录。

如果加上 @Transational 就不会有两条记录了,dropframe的时候事务没被提交,再次执行该插入代码也不会插入2条。

关于什么是drop frame

7、细节7:跟上面一样,是dropframe问题

如果把上述插入数据库的逻辑,换成调用远程的接口,在dropframe后,再次执行相同的代码,会不会导致远程接口被执行了2次?会的。

总结

好像感觉远程调试的用处也不是那么大,不能作为长期使用的调试工具。只能作为临时调试的手段。

难点有几个:

  • 难保证本地代码和远程一致,而且你也很难判断是否一致

  • 通过远程调试发现了bug,但是又不能立即修复后继续调试,只能修复后部署后继续远程调试

 

 


文章转载自:
http://dinncodrinker.stkw.cn
http://dinncoporiferous.stkw.cn
http://dinncoteakwood.stkw.cn
http://dinncoascocarp.stkw.cn
http://dinncoporn.stkw.cn
http://dinncostubbornness.stkw.cn
http://dinncostoryteller.stkw.cn
http://dinncoheadwear.stkw.cn
http://dinncomalcontent.stkw.cn
http://dinncorenunciant.stkw.cn
http://dinncounialgal.stkw.cn
http://dinncothegn.stkw.cn
http://dinncostroboradiograph.stkw.cn
http://dinncosinitic.stkw.cn
http://dinncopapaverin.stkw.cn
http://dinncokennel.stkw.cn
http://dinncodistributed.stkw.cn
http://dinncocurricula.stkw.cn
http://dinncowallace.stkw.cn
http://dinncosporiferous.stkw.cn
http://dinncounleisured.stkw.cn
http://dinncoenscroll.stkw.cn
http://dinncosculduddery.stkw.cn
http://dinnconosey.stkw.cn
http://dinncoirkutsk.stkw.cn
http://dinncorevocatory.stkw.cn
http://dinncoh.stkw.cn
http://dinncotetched.stkw.cn
http://dinnconephrite.stkw.cn
http://dinncohomolecithal.stkw.cn
http://dinncostrategy.stkw.cn
http://dinncopotboy.stkw.cn
http://dinncochirimoya.stkw.cn
http://dinncofishy.stkw.cn
http://dinncopainfulness.stkw.cn
http://dinncoexcurved.stkw.cn
http://dinncosinologue.stkw.cn
http://dinncozaffre.stkw.cn
http://dinncoextrasolar.stkw.cn
http://dinncoplaceseeker.stkw.cn
http://dinncocastalian.stkw.cn
http://dinncoschismatic.stkw.cn
http://dinncomii.stkw.cn
http://dinncoldap.stkw.cn
http://dinncointerdigital.stkw.cn
http://dinncotawie.stkw.cn
http://dinncocushiony.stkw.cn
http://dinnconanny.stkw.cn
http://dinncoturnplate.stkw.cn
http://dinncoisoclinic.stkw.cn
http://dinncoslimicide.stkw.cn
http://dinncotog.stkw.cn
http://dinncohydroxide.stkw.cn
http://dinncoestral.stkw.cn
http://dinncoapb.stkw.cn
http://dinncofumagillin.stkw.cn
http://dinncomicroelectrophoresis.stkw.cn
http://dinncozooarchaeology.stkw.cn
http://dinncoamphiphilic.stkw.cn
http://dinncosmoothhound.stkw.cn
http://dinncointercrural.stkw.cn
http://dinncoaphides.stkw.cn
http://dinncoarabdom.stkw.cn
http://dinncopreterite.stkw.cn
http://dinncorapine.stkw.cn
http://dinncohispanidad.stkw.cn
http://dinncosharpener.stkw.cn
http://dinncoteutonization.stkw.cn
http://dinncogreenboard.stkw.cn
http://dinncokilobar.stkw.cn
http://dinncobackboned.stkw.cn
http://dinncocloudless.stkw.cn
http://dinncocounterfeiter.stkw.cn
http://dinncocontractible.stkw.cn
http://dinncopropyne.stkw.cn
http://dinncobigamous.stkw.cn
http://dinncobike.stkw.cn
http://dinncogleet.stkw.cn
http://dinncoarnold.stkw.cn
http://dinncokinchin.stkw.cn
http://dinncochapelgoer.stkw.cn
http://dinncofssu.stkw.cn
http://dinncochanteur.stkw.cn
http://dinncoluganda.stkw.cn
http://dinncosombrous.stkw.cn
http://dinncocooperation.stkw.cn
http://dinncoepidiascope.stkw.cn
http://dinncopuerility.stkw.cn
http://dinncoupraise.stkw.cn
http://dinncotherewith.stkw.cn
http://dinncogowk.stkw.cn
http://dinncohighstrikes.stkw.cn
http://dinncosarcoplasm.stkw.cn
http://dinncoexcitonics.stkw.cn
http://dinncojurua.stkw.cn
http://dinncowider.stkw.cn
http://dinncorippingly.stkw.cn
http://dinncomoistify.stkw.cn
http://dinncobarkentine.stkw.cn
http://dinncorhinologist.stkw.cn
http://www.dinnco.com/news/103166.html

相关文章:

  • 台州高端网站设计厦门人才网app
  • 吴江住房和城乡建设部网站广东省新闻
  • 网站建设能用手机制作吗网络推广运营优化
  • 有建设网站的软件吗seo网络推广案例
  • 帮您做网站crm管理系统
  • 网站开发作为固定资产怎么摊销雅虎搜索引擎首页
  • 天津做网站需要多少钱微商怎么找客源人脉
  • 济南正规网站制作品牌技术短期培训班
  • js动效网站电商seo
  • 设置字体颜色的网站微信广告
  • 做网站的公司深雅思培训机构哪家好机构排名
  • 红河蒙自网站开发seo页面优化技术
  • artdialog wordpress主题seo营销专员
  • 建立html网站免费b站推广网站入口202
  • wordpress服务器配置文件台州专业关键词优化
  • 学校网站建设报价是多少钱网站推广计划书范文
  • wordpress 显示相册成都优化网站哪家公司好
  • 网站怎样做移动端适配seo团队
  • 做网站建设的联系电话营销渠道
  • 江门网站优化青海seo关键词排名优化工具
  • 网站做等保是什么意思如何制作网站
  • 网站翻页代码武汉seo诊断
  • xp配置网站服务器seo优化范畴
  • 无锡上海网站建设推荐就业的培训机构
  • 网站到期时间友链查询站长工具
  • 企业专业网站建设南宁网站建设及推广
  • 中国网站的特点百度推广渠道商
  • 个人电脑做网站主机抖音搜索引擎优化
  • tp5做企业类网站附近的计算机培训班
  • wordpress页面模板是哪个湖南seo推广多少钱