我的输出如下:
Timestamp:1509383899190 Value:20171030224102
hbase Timestamp 2017/10/30 22:48:19
Value: 2017/10/30 22:41:02
Difference of Timestamp in Seconds:437000
Timestamp:1509383804969 Value:20171030224052
hbase Timestamp 2017/10/30 22:46:44
Value: 2017/10/30 22:40:52
Difference of Timestamp in Seconds:352000
Timestamp:1509383709215 Value:20171030224042
hbase Timestamp 2017/10/30 22:45:09
Value: 2017/10/30 22:40:42
Difference of Timestamp in Seconds:267000
Timestamp:1509383617707 Value:20171030224032
hbase Timestamp 2017/10/30 22:43:37
Value: 2017/10/30 22:40:32
Difference of Timestamp in Seconds:185000
Timestamp:1509383523756 Value:20171030224021
hbase Timestamp 2017/10/30 22:42:03
Value: 2017/10/30 22:40:21
Difference of Timestamp in Seconds:102000
当找到Hbase时间戳时,我们说处理了一个请求。(上面的输出中有5个)
(总开始时间/请求数量)将给出平均吞吐量 但是我想写一个java代码,它会找出每分钟处理的请求数(每分钟点击数),因为我想创建一个吞吐量图。
即使我可以通过任何工具实现这一点,它也会很棒 有人可以帮帮我吗?
答案 0 :(得分:1)
正如其中一条评论中所提到的,最好找一个类似这样的工具,然而,制作一个非常简单的版本并不是那么复杂,但你需要考虑一些像漂移这样的问题,以便让它成为现实。
public static void main (String[] args) {
ThroughputService t = new ThroughputService();
CountDownLatch latch = new CountDownLatch(1);
ScheduledExecutorService service = Executors.newSingleThreadScheduledExecutor();
service.scheduleAtFixedRate(t, 0, 1, TimeUnit.MINUTES);
try {
latch.await();
} catch (InterruptedException ex) {
Logger.getLogger(NewClass.class.getName()).log(Level.SEVERE, null, ex);
}
}
static class ThroughputService implements Runnable {
@Override
public void run() {
//code for calculating your throughput
}
}