這可能看起來像一個奇怪的問題,但我試圖在幾秒內發送儘可能多的HTTP POST請求。只能發送10個HTTP POST請求/秒?
我想知道如果任何人有任何建議,因爲我目前只實現了約6-9的請求秒,這似乎相當低。我的代碼如下 - 我使用Apache的百科全書HTTP庫:
import org.apache.commons.httpclient.HttpClient;
import org.apache.commons.httpclient.methods.GetMethod;
import org.apache.commons.httpclient.methods.PostMethod;
long start = System.currentTimeMillis();
long end = start + 4000;
int count = 0;
while (System.currentTimeMillis() < end)
{
count++;
httpClient.executeMethod(method);
}
System.out.println((double)count/4 + " reqs/sec");
POST方法創建一次事先:
String body= getBodyString();
PostMethod method = new PostMethod(Url);
method.setRequestEntity(new StringRequestEntity(body));
method.setRequestHeader(...etc)
我猜有某種內在的順序行爲,由此httpclient正在等待響應?就我而言,我並不在意這種迴應,所以大概有一種方法可以提高通話費率。也許我可以準備下一個請求,而一個正在發送等。也可以有一個更有效和快速的圖書館?
我是新來的這種類型的代碼,所以我很抱歉,如果這個問題沒有多大意義。
你的標題肯定使它看起來像這將是惡意的目的... – animuson
我可以向你保證它不適用於任何惡意。 – Wozza