首頁  >  問答  >  主體

java - 為什麼這段程式碼執行偶爾能夠達到50~100ms?

    for(Map.Entry<String, String> entry : map.entrySet()) { //map 最多2个key-value对
        Request request = new Request();

        ClientInfo clientInfo = new ClientInfo(clientid, host, ip);

        String value = entry.getValue();
        RealInfo realInfo = new RealInfo(clientId, value , clientInfo);
        request.realInfo = realInfo ;

        concurrentLinkedQueue.add(request);
    }
}

jre是1.7環境,編譯使用的是1.6。
看監控絕大多數在0~1ms內返回,但有部分是50~100ms才返回,qps大概是800。
現在已經排除了CPU load,內存,網卡等原因
我實在想不通為什麼能夠打到50ms。 。 。請大家幫我分析下

黄舟黄舟2636 天前766

全部回覆(1)我來回復

  • 欧阳克

    欧阳克2017-07-03 11:45:18

    有可能是資料庫連線的問題 ip參數變了以後 是否資料庫會有什麼處理出現了這個延遲,以前碰見過類似問題,後來發現是資料庫的問題

    回覆
    0
  • 取消回覆