java - 为什么这段代码执行偶尔能够达到50~100ms?
黄舟
黄舟 2017-07-03 11:43:18
0
1
842
    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。。。请大家帮我分析下

黄舟
黄舟

人生最曼妙的风景,竟是内心的淡定与从容!

全部回复(1)
学霸

有可能是数据库连接的问题 ip参数变了以后 是否数据库会有什么处理出现了这个延迟,以前碰见过类似问题,后来发现是数据库的问题

热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板