Удаленный отладчик Eclipse Java очень медленный по VPN

Я иногда вынужден работать вдали от своего офиса, а это значит, что мне нужно подключиться к VPN в мою лабораторию. Я заметил, что удаленная отладка с Eclipse в этой ситуации ужасно медленная. Медленно до точки, где требуется 5-7 минут для отладчика для подключения к удаленному jvm. После подключения переходы между точками останова/линиями могут занимать 20-30 секунд каждый раз, и он обычно просто отключает соединение, заставляя меня начинать заново.

Может ли кто-нибудь объяснить, почему это так, даже если нет доступного решения? Моя латентность через VPN - это не то, что можно было бы ожидать, учитывая поведение удаленного отладчика. Я делаю все виды других вещей через VPN с минимальной задержкой/препятствием.

Я действительно пытаюсь понять, почему удаленный отладчик так огорчен VPN, когда в основном любая другая сетевая операция в порядке.

Спасибо,

Ответ 1

Спасибо за попытку помочь, ребята. К счастью, мой коллега, испытывающий те же проблемы, глубоко погрузился в него. Из моей корреспонденции коллеги:

"Я установил прокси-сервер, сидящий между моим Eclipse и моей VM, который распечатывал коды команд из пакетов JDWP, которые мой Eclipse отправлял на мою виртуальную машину. http://docs.oracle.com/javase/8/docs/platform/jpda/jdwp/jdwp-protocol.html объяснил мне, что означают эти команды. То, что я увидел, было: каждый раз, когда я проходил через код, Eclipse отправлял в виртуальную машину десятки и десятки "связанных с потоком" команд. Они связаны со следующими возможностями VM: canGetMonitorInfo, canGetCurrentContendedMonitor, canGetOwnedMonitorInfo, canGetMonitorFrameInfo "

Эти возможности вызывают безумную задержку. Он приготовил решение, которое принудительно отключает эти возможности, и удобство использования отладчика резко возросло. Очевидно, что функции мониторинга потоков удаленного отладчика больше не работают, но с учетом того, насколько ранее была удалена удаленная отладка, это отличный компромисс.

Я попытаюсь выяснить, что именно он сделал, чтобы отключить возможности мониторинга потока.

Ответ 2

Отключение Show monitor действительно помогло мне.
Bottom facing triangle трудно обнаружить в отладочной перспективе. Так Просто отправьте изображение, которое отсутствует в ссылке.

введите описание изображения здесь

Ответ 3

С очень легким тестированием довольно большого проекта (почти 100 подпроектов, ping раз ~ 200-300 мс), Netbeans, похоже, делает нормально по сравнению с Eclipse.

Вы можете выполнить шаг, и требуется несколько секунд для обновления и прикрепления в < 1 мин.

Конечно, это раздражает, что нельзя использовать Eclipse, но это графический интерфейс и как такой способ лучше, чем простой JDB.