如何安排kafka主题消息消费?

时间:2016-05-26 10:38:42

标签: java apache-kafka scheduling scheduler kafka-consumer-api

我一直在使用Apache Kafka,并且能够在Ubuntu服务器上发布和使用消息。所以基本上我有我的发布者Java程序&另一方面,我有我的消费者Java程序。

我现在提供消费者class的源代码。我对scheduling有一些了解,例如ThreadsTimerTask。在源代码中,我使用一段时间重复打印消息。

我想知道的是,如何打印,消息的数量(即:消息的数量)已在3秒内消耗掉。当我发布消息时,我做了类似的事情:

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 个答案:

答案 0 :(得分:0)

要回答您的问题,我会说
是的,我们可以监控消费者并找出消费者的消息率。
为此,我们提供了多种工具,例如 - KAFKA UIGANGLIA

KAFKA提供 JMX 端口,可在我们安装这些工具时进行配置,您只需查看指标即可。