Отладка Java / Tomcat приложения, создающего внутренние соединения - PullRequest
0 голосов
/ 07 марта 2019

У меня есть веб-приложение, развернутое в tomcat, которое имеет слишком много соединений, как показано ниже.Я хотел бы знать, какой модуль / библиотека создает такие соединения.

  TCP    0.0.0.0:8009           0.0.0.0:0              LISTENING       268
  TCP    0.0.0.0:8080           0.0.0.0:0              LISTENING       268
  TCP    127.0.0.1:8005         0.0.0.0:0              LISTENING       268
  TCP    127.0.0.1:44251        127.0.0.1:3306         ESTABLISHED     268
  TCP    127.0.0.1:44252        127.0.0.1:3306         ESTABLISHED     268
  TCP    127.0.0.1:44257        127.0.0.1:3306         ESTABLISHED     268
  TCP    127.0.0.1:44258        127.0.0.1:3306         ESTABLISHED     268
  TCP    127.0.0.1:44260        127.0.0.1:3306         ESTABLISHED     268
  TCP    127.0.0.1:44261        127.0.0.1:44262        ESTABLISHED     268
  TCP    127.0.0.1:44262        127.0.0.1:44261        ESTABLISHED     268
  TCP    127.0.0.1:44263        127.0.0.1:44264        ESTABLISHED     268
  TCP    127.0.0.1:44264        127.0.0.1:44263        ESTABLISHED     268
  TCP    127.0.0.1:44265        127.0.0.1:44266        ESTABLISHED     268
  TCP    127.0.0.1:44266        127.0.0.1:44265        ESTABLISHED     268
  TCP    127.0.0.1:44267        127.0.0.1:44268        ESTABLISHED     268
  TCP    127.0.0.1:44268        127.0.0.1:44267        ESTABLISHED     268
  TCP    127.0.0.1:44269        127.0.0.1:44270        ESTABLISHED     268
  TCP    127.0.0.1:44270        127.0.0.1:44269        ESTABLISHED     268
  TCP    127.0.0.1:44271        127.0.0.1:44272        ESTABLISHED     268
  TCP    127.0.0.1:44272        127.0.0.1:44271        ESTABLISHED     268
  TCP    127.0.0.1:44273        127.0.0.1:44274        ESTABLISHED     268
  TCP    127.0.0.1:44274        127.0.0.1:44273        ESTABLISHED     268
  TCP    127.0.0.1:44275        127.0.0.1:44276        ESTABLISHED     268
  TCP    127.0.0.1:44276        127.0.0.1:44275        ESTABLISHED     268
  TCP    127.0.0.1:44277        127.0.0.1:44278        ESTABLISHED     268
  TCP    127.0.0.1:44278        127.0.0.1:44277        ESTABLISHED     268
  TCP    127.0.0.1:44279        127.0.0.1:44280        ESTABLISHED     268
  TCP    127.0.0.1:44280        127.0.0.1:44279        ESTABLISHED     268
  TCP    127.0.0.1:44281        127.0.0.1:44282        ESTABLISHED     268
  TCP    127.0.0.1:44282        127.0.0.1:44281        ESTABLISHED     268
  TCP    127.0.0.1:44283        127.0.0.1:44284        ESTABLISHED     268
  TCP    127.0.0.1:44284        127.0.0.1:44283        ESTABLISHED     268
  TCP    127.0.0.1:44285        127.0.0.1:44286        ESTABLISHED     268
  TCP    127.0.0.1:44286        127.0.0.1:44285        ESTABLISHED     268
  TCP    127.0.0.1:44287        127.0.0.1:44288        ESTABLISHED     268
  TCP    127.0.0.1:44288        127.0.0.1:44287        ESTABLISHED     268
  TCP    127.0.0.1:44289        127.0.0.1:44290        ESTABLISHED     268
  TCP    127.0.0.1:44290        127.0.0.1:44289        ESTABLISHED     268
  TCP    127.0.0.1:44291        127.0.0.1:44292        ESTABLISHED     268
  TCP    127.0.0.1:44292        127.0.0.1:44291        ESTABLISHED     268
  TCP    127.0.0.1:44293        127.0.0.1:44294        ESTABLISHED     268
  TCP    127.0.0.1:44294        127.0.0.1:44293        ESTABLISHED     268
  TCP    192.168.1.128:8080     192.168.1.128:43916    ESTABLISHED     268
  TCP    192.168.1.128:8080     192.168.1.128:44295    ESTABLISHED     268

Если вы посмотрите на соединения, есть пары соединений.Например:

 TCP    127.0.0.1:44265        127.0.0.1:44266
 TCP    127.0.0.1:44266        127.0.0.1:44265

В некоторых случаях эти пары соединений встречаются с тысячами соединений.Мы не создаем эти пары соединений вручную.Мы используем библиотеку, которая управляет сокетными подключениями к внешнему устройству.Библиотека в свою очередь использует Apache Mina.Каковы возможные способы отладки этих странных пар соединений?

1 Ответ

0 голосов
/ 07 марта 2019

Создайте дамп кучи и используйте инструмент для его анализа.Это скажет вам, какой класс создает все объекты соединения.

https://dzone.com/articles/java-heap-dump-analyzer-1

...