java qps 怎么计算_计算QPS - sarah471433 - 博客园

文件nglog.txt文件如下

时间点 返回的状态吗  用时(秒)

13:14:15 200 10

13:14:15 500 30

13:14:15 200 20

13:14:15 200 10

13:14:15 200 10

13:14:16 200 30

13:14:16 500 36

13:14:16 200 300

13:14:16 500 30

。。。。

求 QPS

JAVA版搓代码如下(仅限功能实现,没有考虑性能,代码优化等问题)

package com.qunar.hotel.qta.order.core.common;

import java.io.*;

import java.util.ArrayList;

import java.util.HashMap;

import java.util.Iterator;

import java.util.Set;

/**

* Created by ling.yu on 2015/10/19.

*/

public class doNGlog {

public static void main(String[] agrs) throws FileNotFoundException {

String file="E:\\nglog.txt";

readFileByLines(file);

}

/**

* 以行为单位读取文件,常用于读面向行的格式化文件

*/

public static void readFileByLines(String fileName) throws FileNotFoundException {

File file = new File(fileName);

BufferedReader reader = null;

HashMap mapRes_sum=new HashMap();

HashMap mapRes_count=new HashMap();

try {

System.out.println("以行为单位读取文件内容,一次读一整行:");

reader = new BufferedReader(new FileReader(file));

String tempString = null;

int line = 1;

// 一次读入一行,直到读入null为文件结束

while ((tempString = reader.readLine()) != null) {

// 显示行号

// System.out.println("line " + line + ": " + tempString);

if((tempString.split(" ")[1]).equals("200")){

String keyString=tempString.split(" ")[0].toString();

String valueString2=tempString.split(" ")[2].toString();

Set keySetRes=mapRes_sum.keySet();

if (keySetRes.contains(keyString)){

String valueString1=mapRes_sum.get(keyString);

try {

String tmp=(Integer.parseInt(valueString1)+Integer.parseInt(valueString2))+"";

int count_value=Integer.parseInt(mapRes_count.get(keyString))+1;

mapRes_count.put(keyString,count_value+"");

mapRes_sum.put(keyString, tmp);

}catch (Exception e){

System.out.println("怎么就put不进去");

}

}else {

mapRes_sum.put(keyString,valueString2);

mapRes_count.put(keyString,"1");

}

}

line++;

}

reader.close();

} catch (IOException e) {

e.printStackTrace();

} finally {

if (reader != null) {

try {

reader.close();

} catch (IOException e1) {

}

}

}

Set keySet=mapRes_sum.keySet();

for(String key:keySet){

System.out.println(key+"总用时:"+mapRes_sum.get(key));

System.out.println(key+"出现:"+mapRes_count.get(key)+"次");

System.out.println(key+"平均用时:"+Integer.parseInt(mapRes_sum.get(key))/Integer.parseInt(mapRes_count.get(key)));

}

}

}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值