2010-02-23 81 views
3

一位客戶要求我們根據訪問該網站的用戶的IP在其ASP.NET網站的主頁上進行動態whois查詢。在C#中使用TcpClient.Connect()進行WHOIS查找代價高昂嗎?

的實施會是這樣的東西在這裏描述'S:

http://www.aspheute.com/english/20000825.asp

不過,我注意到,這個代碼連接到whois.networksolutions.com。我認爲如果我們在每次頁面加載時都啓動到此遠程服務器的連接,這可能無法很好地擴展。

例如,假設有1000個不同的用戶進入主頁 - 這會導致大量的連接被啓動。

對此有何看法?

回答

2

是的,它可能很耗時。 「昂貴」的數量實際上取決於服務器和遠程服務器之間的網絡連接以及遠程服務器的響應時間。如果您的請求彼此沒有區別(對於查詢最終用戶輸入的域名不太可能),您可以考慮緩存響應。更大的問題是,如果遠程服務器看到來自單個IP地址的太多連接,可能會阻止您。

0

我可能會問客戶,如果反向DNS是可行的......這樣你就可以利用DNS服務器的緩存功能來減少互聯網流量。除非您沒有內部DNS,否則您將利用ISP的DNS服務器的緩存功能。

儘管whois和DNS之間有很大的區別,所以它取決於客戶他們想要什麼。

要回答你直接的問題,雖然...也許你可以建立某種形式的緩存的這個數據,以減少你有一臺主機衝浪網站的各個網頁做重複搜索的次數?

0

除了緩存,您可能還需要此查找必須是異步的,所以任何的延遲不會撐起提供該頁面。

相關問題