私はJavaで非同期リクエストに問題があります...単に次のサーブレットを持っています:
public class Notifier extends HttpServlet{
public void service(final ServletRequest req, final ServletResponse res){
final AsyncContext ctx = req.startAsync();`
...
}
このサーブレットは 1000 のリクエスト (数 3 倍) を処理すると思いますが、ajax でテストすると、サーブレット側で受信したリクエストは 6 つだけでした。
テスト コード スニペットは次のとおりです。
for(i=0;i<5000;i++){
var xmlhttp;
if (window.XMLHttpRequest)
{
xmlhttp=new XMLHttpRequest();
}
xmlhttp.onreadystatechange=function()
{
if (xmlhttp.readyState==4 && xmlhttp.status==200)
{
} }
xmlhttp.open("GET","http://localhost:8080/Notifier?mode=authorised&a="+i,true);
xmlhttp.send();
}
Notifier サーブレットがブラウザから送信したすべてのリクエストを処理しない理由がわかりません...
前もって感謝します...