Hi Roshan,

Just to narrow it down .. can u get rid of the bolt  and see what numbers
you get ?
> Thanks, I will try that.

Which Kafka spout are you using (new/old) ?
> The new one, from kafka-clients.

I assume you mean msgs when you say ‘transactions’.
> Yes that would be messages

Did you mean you are getting 48k aggregate Msgs/sec or is that 48k per
worker ?
> That would be the throughput of the whole topology, not per worker.

Thanks,
Bernard

On Mon, Jan 7, 2019 at 4:24 PM Roshan Naik <roshan_n...@yahoo.com> wrote:

> Just to narrow it down .. can u get rid of the bolt  and see what numbers
> you get ?
>
> Which Kafka spout are you using (new/old) ?
>
> I assume you mean msgs when you say ‘transactions’.
> Did you mean you are getting 48k aggregate Msgs/sec or is that 48k per
> worker ?
>
>
>
> Sent from Yahoo Mail for iPhone
> <https://overview.mail.yahoo.com/?.src=iOS>
>
> On Sunday, January 6, 2019, 11:29 PM, Bernard Quizon <
> bernard.qui...@stellarloyalty.com> wrote:
>
> Hi,
>
> Before anything else, I'm using Apache Storm 1.2.1 and Apache Kafka 1.1.1.
> On my initial tests, I have:
>
>    - *6 supervisor nodes *
>    - 1 worker per node
>    - 7 KafkaSpout executors per worker
>    - 1 bolt (that does nothing) per worker
>    - 0 Ackers
>    - 2 Kafka brokers with *42 partitions *on the topic
>
> With that configuration, no matter how I change some other configs (Please
> see list below), my topology is capping out at around 48k TPS.
> Please note that CPU usage, for the Supervisor nodes, is only around 20%
> and Network usage is only around 20Mbps for both the Kafka Brokers and
> Supervisor nodes, well below the network capacities.
>
> Now, I have increased the supervisor nodes from 6 to 12 and used a new
> topic with 82 partitions, thinking that scaling out could help the
> performance.
> So is this the new configuration:
>
>    - *12 supervisor nodes *
>    - 1 worker per node
>    - 7 KafkaSpout executors per worker
>    - 1 bolt (that does nothing) per worker
>    - 0 Ackers
>    - 2 Kafka brokers with *84 partitions* on the topic
>
> And I'm still getting around 48k TPS.
>
> Some other configs I played around with:
>
>    - max.poll.records
>    - max.spout.pending
>    - processing.guarantee
>    - offset.commit.period.ms
>    - max.uncommitted.offsets
>    - poll.timeout.ms
>    - fetch.min.bytes
>    - fetch.max.bytes
>    - max.partition.fetch.bytes
>    - receive.buffer.bytes
>    - fetch.max.wait.ms
>    - topology.executor.receive.buffer.size
>    - topology.executor.send.buffer.size
>    - topology.receiver.buffer.size
>    - topology.transfer.buffer.size
>
>
> Am I missing something here? Why is the throughput not improving?
>
> Just to add, I have also done some performance isolation tests on both
> Kafka and Storm.
> On a distributed consumer using Spark and Kafka, I was able to get around
> 700K TPS (So we know that Kafka isn't the issue here).
> And also I could get around 400k TPS on a custom Storm topology with 1
> spout that generates random transactions and 1 bolt that does nothing.
> I feel like the numbers don't add up and the topology shouldn't be capping
> out at around 48K TPS.
> Your suggestions would be very much appreciated.
>
>
> Thanks,
> Bernard
>
>

Reply via email to