StopWatch 更高效的计算程序运行时间

在进行接口压测试,需要观察接口的整体链路的耗时情况,来做进一步的优化,此时用StopWatch 就能快速清晰的看到所有的耗时情况。

stopWatch位于org.springframework.util包内

在业务代码中使用 StopWatch

public void testStopWatch(String str) {
    StopWatch stopWatch = new StopWatch();
    stopWatch.start("query 1 info");
    { 
      ...业务逻辑
    }
    stopWatch.stop();
    stopWatch.start("query 2 info");
    {
      ...业务逻辑
    }
    stopWatch.stop();
    stopWatch.start("update 1 cost");
    {
      ...业务逻辑
    }
    stopWatch.stop();
    stopWatch.start("update 2 cost");
    {
      ...业务逻辑
    }
    stopWatch.stop();
    log.info("count costTime={}", stopWatch.prettyPrint());
  }

写一个test看执行结果

2022-09-14 14:06:18.833  INFO 62545 --- [           main] c.m.p.i.s.m.impl.testStopWatchImpl  : count costTime=StopWatch '': running time (millis) = 598
-----------------------------------------
ms     %     Task name
-----------------------------------------
00057  010%  query 1 info
00000  000%  query 2 info
00295  049%  query 3 info
00040  007%  update 1 cost
00046  008%  update 2 cost
00160  027%  update 3 cost

prettyPrint 方法会打印出当前全部的总耗时以及每一个部分的单独耗时和占比,还是很清晰的,包内还有其他方法用于打印耗时

打印单个的话可以调用 打印毫秒 stopWatch.getTotalTimeMillis() 打印秒 stopWatch.getTotalTimeSeconds()

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值