Thanks ... but I think its really not good for my case...

This is because I must connect to all consumers for such stat...And I may have 
a lot of consumers... from 5k to 15k...

So why not to add getNumFetchRequests &  getNumProduceRequests in 
kafka.BrokerTopicStat.[topic]? 
(I can use getBytesIn and getBytesOut ... but my message doesn’t have fix 
size...)

I try to find the solution to create "сlever" load-balancer via 
partitioner.class...

Thanks in advance, Aleksey Ryabkov


-----Исходное сообщение-----
От: Jun Rao [mailto:jun...@gmail.com] 
Отправлено: Friday, May 30, 2014 7:34 AM
Кому: users@kafka.apache.org
Тема: Re: mBean to monitor message per partitions in topic

If you open up jmx (e.g. jconsole) in a consumer instance, you will see the jmx 
of name *-ConsumerLag.

Thanks,

Jun


On Thu, May 29, 2014 at 8:53 AM, Рябков Алексей Николаевич < 
a.ryab...@ntc-vulkan.ru> wrote:

> Do you mean getOffsetLag ? (
> https://cwiki.apache.org/confluence/display/KAFKA/Operations)
>
> But its all about offset not message...
>
> So for example to create "real" load balance between broker I can:
>
> 1. Calculate average unread message in topic per broker:
>        - Sall=sum(kafka.BrokerAllTopicStat.[topic]. getMessagesIn) 
> -total send messages in topic for all broker
>        - Rall=sum (kafka.ConsumerTopicStat.[topic]. 
> getMessagesPerTopic -  -total read messages in topic for all consumers
>        - (Sall-Rall)/broker number - average unread messages in topic 
> per broker 2. Get current number of unread messages in topic for 
> broker (little hack
> here)
>       for example if we  locate N consumers per broker and each 
> consumer must read only from 1 partition than we can :
>        - Sb=kafka.BrokerAllTopicStat.[topic]. getMessagesIn) -total 
> send messages in topic for broker B
>        - Rb=sum for all N consumers in broker b 
> (kafka.ConsumerTopicStat.[topic]. getMessagesPerTopic) - total unread 
> messages in topic for N consumers on broker b
>         - (Sb-Rb) -unread messages in topic for broker 3. Use 
> partitioner to load balance between brokers ...
>         - compare average unread messages in topic per broker with 
> current unread messages in topic for broker we can create more clever 
> load balancer...
>
>
> But what can you tell about performance?... How fast I can get 
> monitoring stat?  Could you give me some advice for optimization?
>
>
> Thanks, Aleksey Ryabkov
>
>
> -----Исходное сообщение-----
> От: Jun Rao [mailto:jun...@gmail.com]
> Отправлено: Thursday, May 29, 2014 8:34 AM
> Кому: users@kafka.apache.org
> Тема: Re: mBean to monitor message per partitions in topic
>
> There is a per-partition jmx (*-ConsumerLag) in the consumer that 
> reports unconsumed messages per partition.
>
> Thanks,
>
> Jun
>
>
> On Wed, May 28, 2014 at 8:13 AM, Рябков Алексей Николаевич < 
> a.ryab...@ntc-vulkan.ru> wrote:
>
> > Hello!
> >
> > How can I get information about unfetched message per partition in topic?
> >        I wish to use such information to create my custom 
> > partitioner.class to balance messages between partitions
> >
> > With best regards, Aleksey Ryabkov
> >
> >
>

Reply via email to