0

這裏是一個假設的情況:調用HTTP API的網絡限制?

說我在一個單一的線程迭代,雖然一個數據集和HTTP調用Web上的一些API的每個條目。假設API不使用限制,我是否應該期待來自呼叫的無損性能?如在我看來,當我循環輸入條目(出於各種原因,可能與網絡有關)時,我是否會開始看到故障在某個時刻累積?或者應該一切都可以預測好嗎?

現在,讓我們說,我開始使用線程池進行上述迭代。我想每個線程都會打開到目的地的出站端口。什麼決定了我可以用來調用同一個API的最大線程數?隨着線程數的增加,性能或成功率如何降低?

回答

0

不知道這是否仍然相關,但無論如何: 在情況a)我不會期望任何負面影響,因爲您將在任何時候只有一個請求/響應運行。所以吞吐量時間應該僅取決於服務器處理請求的速度。

在情況b)中,一個限制將是客戶端(即OS)在任何給定時間打開的最大連接數(tcp或udp)。當然也適用於另一方。如果這個數字不是一個限制因素,我會期望服務器隨着一定數量的請求而下降。您將創建自己的DoS攻擊;-)