Eclipse Java远程调试器在VPN上非常慢

我有时被迫离开办公室工作,这意味着我需要VPN进入我的实验室。 我注意到在这种情况下使用Eclipse进行远程调试非常慢。 缓慢到调试器连接到远程jvm需要5-7分钟的时间点。 连接后,逐步通过断点/线路每次可能需要20-30秒,而且它通常会断开连接,这让我不得不重新开始。

任何人都可以解释为什么会这样,即使没有可用的解决方案? 考虑到远程调试器的行为,我通过VPN的延迟几乎不是人们期望的。 我通过VPN做各种其他的事情,最小的滞后/阻塞。

我真的很难理解为什么远程调试器受到VPN的影响,基本上每个其他网络操作都没问题。

谢谢,

谢谢你试图帮助,伙计们。 幸运的是,受同样问题困扰的我的一位同事深入研究了它。 从我同事的信件中:

“我在我的Eclipse和我的VM之间建立了一个代理,它从Eclipse发送到我的VM的JDWP数据包中打印出命令代码.http://docs.oracle.com/javase/8/docs/platform/jpda/jdwp /jdwp-protocol.html页面向我解释了那些命令的含义。我看到的是:每次我执行代码时,Eclipse都会向VM发送数十个与“线程监视器”相关的命令。它们与以下VM相关function:canGetMonitorInfo,canGetCurrentContendedMonitor,canGetOwnedMonitorInfo,canGetMonitorFrameInfo“

这些能力造成了疯狂的滞后。 他已经制定了一个强制禁用这些function的解决方案,并且调试器的可用性飙升。 显然,远程调试器的线程监视function不再有效,但考虑到以前远程调试的不可用性,这是一个很好的折衷方案。

我将尝试找出他为了禁用线程监控function而做了什么。

禁用Show monitor确实帮助了我。
在调试透视中很难发现Bottom facing triangle 。 所以只需发布链接中缺少的图像。

在此处输入图像描述

从一个非常大的项目(几乎100个子项目,ping时间~200-300ms)的非常轻微的测试,Netbeans似乎与Eclipse相比做得很好。

您可以步进,只需几秒钟即可在<1分钟内更新和连接。

不能使用Eclipse当然很烦人,但它是一个GUI,比普通的JDB更好。

你试过这个吗? http://www.gontu.org/how-you-can-debug-a-remote-java-application/

听起来你需要设置它以便通过VPN调试你的应用程序。 顺便说一下,这个SOpost也有答案。

我希望这有助于你的情况。 祝你好运!