Есть ли более быстрый метод для NSLookup, чем InetAddress.getByName ()?

1

Моя цель - проверить большой список доменов как можно быстрее. Метод InetAddress.getByName() кажется для меня немного медленным. В PHP есть gethostbyname('www.example.com') который работает быстрее. Есть ли эквивалент в Java, который быстрее? или есть способ ускорить его?

Теги:

1 ответ

1
Лучший ответ

NSLookups требует времени из-за сетевой инфраструктуры, но вы можете сделать чек в paralell. Напишите поток, который выполняет поиск и запускает несколько экземпляров в paralell.

class LookUpThread implements Runnable {
String name;
public LookUpThread() {

}

public LookUpThread(String Name) {
    this.name = Name;
}

public void run() 
{
    try 
    {
        InetAddress address = InetAddress.getByName(this.name);
        System.out.println(address.getHostAddress());
    } 
    catch (Exception E) {
        System.out.println("Exception " + E.getMessage());
    }
}

}

И в тебе главное:

String[] adds = new String[]{"example.com", "example.com"};
for(int i = 0; i < adds.length; i++)
    new LookUpThread(adds[i]).run();

Ещё вопросы

Сообщество Overcoder
Наверх
Меню