2012-07-04 33 views
0

我需要測量一個java應用程序的DNS查找時間。我的想法是衡量InetAddress.getByName(「myName」)的執行時間。我不確定的是這個調用是否被操作系統緩存。有人可以告訴我嗎?用java測量DNS查詢時間

有沒有更好的方法來做到這一點?

+0

有3個問題 – sudocode

回答

2

我不知道的操作系統,但是Java有它自己的DNS緩存這是通過系統屬性配置。請結帳this link瞭解更多詳情。

編輯:

您的使用案例值得disable DNS caching

2

關於緩存的InetAddress的Javadoc說:

The InetAddress class has a cache to store successful as well as unsuccessful host name resolutions. 

所以,無論對OS,Java的緩存結果。

請繼續閱讀,您可以看到您可以指定修改默認緩存行爲的JVM參數。