PHP的dns_get_record在本機測試很慢怎麼解決

來源:互聯網
上載者:User
一直想尋找一個免費不限頻率的網域名稱查詢介面,網上找了很久都沒找到,最後乾脆自己寫一個網域名稱尋找介面,原理是直接用PHP尋找該網域名稱的whois資訊,但直接尋找whois太慢,就想先尋找該網域名稱的NS記錄,如果有NS記錄的話這個網域名稱就已經註冊了,這樣理論上應該要快一些,這種思路對嗎?
現在我用php的dns_get_record查詢網域名稱dns資訊,但這速度真的不敢恭維哈,試了很多網域名稱,基本上平均查詢時間都在一分鐘以上!有好幾次都掛掉了,完全不像網上網域名稱註冊商那樣快,手上沒有美國的主機,想問一下,如果在美國主機上運行dns_get_record是不是會快一些?

回複內容:

一直想尋找一個免費不限頻率的網域名稱查詢介面,網上找了很久都沒找到,最後乾脆自己寫一個網域名稱尋找介面,原理是直接用PHP尋找該網域名稱的whois資訊,但直接尋找whois太慢,就想先尋找該網域名稱的NS記錄,如果有NS記錄的話這個網域名稱就已經註冊了,這樣理論上應該要快一些,這種思路對嗎?
現在我用php的dns_get_record查詢網域名稱dns資訊,但這速度真的不敢恭維哈,試了很多網域名稱,基本上平均查詢時間都在一分鐘以上!有好幾次都掛掉了,完全不像網上網域名稱註冊商那樣快,手上沒有美國的主機,想問一下,如果在美國主機上運行dns_get_record是不是會快一些?

剛剛測試了alexa top 500網域名稱,最大耗時12.2S,最小不到0.001S.
同時事先我清空了原生DNS緩衝.

可以這麼實現,因為每個網域名稱至少等包含一條NS記錄。

速度慢是你機器的原因,我在本機測試最多不超過3S.

擷取一條後在一段時間內會存在緩衝,我想你可以修改原生DNS伺服器看看能否有改善

$start=microtime(true);$domain='segmentfault.com';$rs=dns_get_record(strtolower($domain),DNS_NS);print_r($rs);$end=microtime(true);echo $end-$start;

  • 相關文章

    聯繫我們

    該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

    如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

    A Free Trial That Lets You Build Big!

    Start building with 50+ products and up to 12 months usage for Elastic Compute Service

    • Sales Support

      1 on 1 presale consultation

    • After-Sales Support

      24/7 Technical Support 6 Free Tickets per Quarter Faster Response

    • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.