我正在爲重定向腳本編寫基準測試。查詢URL無重定向Go
我想我的程序查詢重定向到AppStore的某個URL。但我不想下載AppStore頁面。我只是想記錄重定向URL或錯誤。
如何告知轉到查詢網址而無需第二次重定向查詢?
UPDATE
這兩個答案都是正確的,但:
我嘗試這兩種解決方案。我正在做基準測試。 我使用10-500個例程運行1個或多個go進程。他們在一個循環中查詢URL。 我的服務器也寫在去。它每秒報告一些請求。
- 第一個解決方案:
http.DefaultTransport.RoundTrip
- 工作緩慢,給出錯誤。 前4秒工作正常。進行300-500個查詢,性能下降到每秒80個查詢。
然後下降到每秒0-5查詢和queryies腳本開始喜歡
dial tcp IP:80: A connection attempt failed because the connected
party did not properly respond after a period of time, or established
connection failed because connected host has failed to respond.
收到錯誤我想它再利用連接被關閉。
- 第二種解決方案:
CheckRedirect field
以恆定的性能工作。我不確定它是否重新使用連接,或者它爲每個請求打開一個新的連接。我爲循環中的每個請求創建了client
。它是如何在現實生活中表現出來的(每一個請求都是一個新的連接)。有沒有辦法確保連接在每個查詢後關閉並不被重新使用?
這就是爲什麼我要標記第二個解決方案,以便回答我的問題。但對於我的研究來說,每個查詢都是一個新連接是非常重要的。我如何確保使用第二種解決方案?
謝謝。在每次請求後是否確保連接已關閉?我希望模擬來自社交網絡的巨大流量,必須在1-5分鐘內根據Agent頭部重新定向。所以每個用戶只查詢一次,並且必須重定向。 (這是連接必須關閉) – Max
我不確定我會爲負載測試/基準測試工具創建自定義客戶端。我會建議使用Apache Bench(ab,http://httpd.apache.org/docs/2.2/programs/ab.html)。 – mna
我知道ab。但我希望更好地瞭解Go網絡。這樣一個微不足道的案例當然有很多問題。謝謝 – Max