2010-03-04 92 views

回答

1

是不是一個足夠的DNS查詢單線程?因爲DNS查找只需要向DNS服務器發送請求以將域名轉換爲IP地址,則一旦獲得該請求,應該將其存儲在操作系統中供以後使用。

+0

我需要儘快結果,但DNS查詢過程非常緩慢。 – 2010-03-04 05:02:53

+0

DNS查詢過程需要DNS服務器的請求,如果DNS服務器離你很遠,則需要時間。 – YOU 2010-03-04 05:05:07

+0

我有很多的域名處理,更多的線程可以嗎? – 2010-03-04 05:06:06

0

DNS查找的速度很可能受到本地DNS服務器的速度和/或其與您正在與之通話的遠程DNS服務器之間的網絡帶寬和延遲的限制。

從Java中,您可以通過產生更多的線程來創建更多的InetSocketAddress(已完成更多的DNS查找),但遲早會遇到越來越難以解決的外部限制。

問題:爲什麼你需要創建大量的InetSocketAddress對象?

編輯 - 根據您的回覆,我假設這些的InetSocketAddress對象都是爲了同一個遠程主機,並且你希望他們快速做出應用程序啓動速度快。在這種情況下,您可以避免重複DNS查找,方法是從創建的第一個InetSocketAddress中取出IP地址,然後使用該IP地址創建剩餘的InetSocketAddress對象。

問題2:提高什麼速度?你是否想同時與很多服務器交談?爲什麼?

+0

創建更多InetSocketAddress似乎提高了速度。 – 2010-03-04 07:02:07