Java Socket Creation тым ұзақ қабылданады

Мен Intel негізіндегі Linux машинасында келесі Java кодын орындауға тырысамын (Custom Minimal Linux нұсқасы: Linux 2.6.18). Ұяларды жасау өте ұзақ уақытқа созылады (~ 3mins). Linux-де Top командасын іске қосқан кезде, ол менің Java үрдісімнің ұйқы режимінде екенін көрсетті. Біреулер маған бұл туралы не айтқысы келеді?

Java нұсқасы: 1.6.0_24

try{
    System.out.println("Creating a Socket at: " + new Date());
    s = new Socket(hostname, p);
    System.out.println("Socket creation complete at: " + new Date());
    s.close();
}

UPDATE: Java 1.7 (1.7.0_01) арқылы сыналды және ол жақсы жұмыс істейді. Бүкіл бағдарлама 5 жасқа толады   секунд. Сокет құру дереу қайтарылады.

2
telnet қапшықтың шақыруынан қанша уақыт алады (сол және ) )?
қосылды автор NPE, көзі
Telnet біраз уақыт күтіп, «Шетелдік хост арқылы жабық байланыс» деген хабарлама алады. Оның уақытша болуы мүмкін. Сервер жұмыс істейтінін білемін. Ұзақ уақыт бойы розетка жасау үшін, менің java бағдарламасы шынымен сол сервермен жақсы қарым-қатынаста болды. Тек қана Socket құру уақыты.
қосылды автор M99, көзі

2 жауаптар

Менің ойымша, бұл DNS мәселесі. Хосттың аты немесе IP пайдаланасыз ба? Егер сіз атауды қолданып жатсаңыз, оны қарастыруды ұмытпаңыз. Пинг қанша уақыт алады? Менің ойымша, бұл көп уақыт алады. Кез-келген жағдайда сіздің IP-мекен-жайыңызды java бағдарламасында қолдануға тырысыңыз. Сіздің мәселеңізді шешетініне сенімдімін.

Желі параметрлерін, брандмауэрді, NAT-ды және т.б. тексермейтін болсаңыз, жергілікті қосылымнан бастаңыз, яғни жергілікті хостыңыздан, содан кейін жергілікті желідегі басқа хостта, содан кейін басқа желідегі хостқа (қажет болса) жергілікті бағдарламаңызды көріңіз.

Іске сәт.

3
қосылды
telnet IP порты қанша тұрады ?
қосылды автор Peter Lawrey, көзі
IP-мекен-жайымды пайдаланамын. Домен атауы емес. Ping өте жылдам, себебі мен байланыстыруға тырысатын сервер сол желіде (бір ғана хоп) тұрады.
қосылды автор M99, көзі
Telnet біраз уақыт күтіп, «Шетелдік хост арқылы жабық байланыс» деген хабарлама алады. Оның уақытша болуы мүмкін. Сервер жұмыс істейтінін білемін. Ұзақ уақыт бойы розетка жасау үшін, менің java бағдарламасы шынымен сол сервермен жақсы қарым-қатынаста болды. Тек қана Socket құру уақыты.
қосылды автор M99, көзі

Мен тұтас таңертең оны айналдырдым.

In my ubuntu, I try to turn the ipv6 setting(System Settings->Network) from "Automatic" to "Ignore", then everything is ok.

Бұл JDK1.6 үшін қате болып көрінеді, мен жақын арада JDK1.7 көріңіз.

0
қосылды