RMI использует Spring медленно - PullRequest
4 голосов
/ 06 июня 2011

Я использую RMI и заметил, что это очень, очень медленно. Для простого вызова требуется ~ 8-10 секунд, чтобы получить ответ. Это не метод, который я вызываю, который занимает так много времени. Если я использую RMI, но указываю на вызов 127.0.0.1, это очень быстро (метод, который я вызываю, в любом случае не сложен).

Так ... в чем может быть причина? Мой нисходящий поток достаточно быстр, восходящий поток удаленной машины достаточно быстрый ... и удаленная машина не слишком занята другими делами.

Что-нибудь, что я мог сделать неправильно? Или что-нибудь, чтобы немного его закрепить?

Ответы [ 3 ]

2 голосов
/ 06 июня 2011

Есть ли на удаленном компьютере записи DNS IPv6 (AAAA)?Вы можете получить такую ​​задержку при попытке установить соединение с компьютером с двумя стеками (IPv4 и IPv6), если у вас нет возможности подключения по IPv6.Сначала будет пробоваться IPv6, затем по истечении нескольких секунд будет установлено соединение по IPv4.

1 голос
/ 06 июня 2011

Возможно, это ваш брандмауэр или какой-то другой прокси-сервер. Получили ли вы метки времени входа и выхода вызовов методов, зарегистрированные как на клиенте, так и на сервере? Попробуйте использовать Wireshark для просмотра пакетов, в частности TCP SYN -> ACK -> SYN/ACK handshake.

1 голос
/ 06 июня 2011

Вы ссылаетесь на удаленный компьютер через DNS или используете необработанные IP-адреса?Может быть, то, что вас тормозит, это разрешение имен DNS.

...