我一直在和 Apache Kafka
能够在我的电脑上发布和消费信息 Ubuntu
服务器。所以基本上我有我的publisher-java程序,另一方面我有我的consumer-java程序。
我在此为我的consumer类提供源代码。我对这方面有些了解 scheduling
例如 Threads
以及 TimerTask
. 在源代码中,我使用一段时间重复打印消息。
我想知道的是,如何打印,在3秒钟内消耗的消息数(即:消息计数)。我在出版杂志的时候也做过这样的事messages:.
TimerTask tasknew = new TimerTask() {
@Override
public void run() {
System.out.println("count : "+ count);
count = 0;
for (int i = 1; i < 2100; i++) {
count = count + 1;
String ip = "192.168.2." + rnd.nextInt(255);
String msg = " testing ";
KeyedMessage<String, String> data = new KeyedMessage<String, String>("Games", ip , msg);
producer.send(data);
}
}
};
Timer timer = new Timer();
timer.schedule(tasknew, 100, 3000);
所以基本上每三秒钟打印700条信息。我需要做同样的事情,当我消费以及。但是要显示在3秒钟内消耗的消息数。
我该怎么处理?任何帮助都将不胜感激。
1条答案
按热度按时间7gyucuyw1#
回答你的问题,我会说是的。
是的,我们可以监控消费者,找出消费者的信息率。
要做到这一点,可以使用多种工具,如kafkaui和ganglia。
kafka提供了jmx端口,当我们安装这些工具时,它是可配置的,您可以简单地看到度量。