Thanks for sharing the doc Roshan.
It is very informative.

I think number of threads per bolt is on the high side (When 60 bolts are
run per node, there are 1200 total threads/node).

Some of these would be essential for the worker's book-keeping but still it
seems we can get a lot of performance boost if we can somehow reduce these
threads and the associated context switching between them.


On Thu, Mar 16, 2017 at 12:53 PM, Roshan Naik <[email protected]>
wrote:

> Typically  there are 3 threads per spout or bolt instance (unless the
> spout or bolt is spawning its own threads). There are the acker bolts,
> event loggers and system bolt running there too.
>
> Then there are several more per worker. See a summary of it in section 3.1
> of this document
>
> https://docs.google.com/document/d/1EzeHL3d7EE-
> RyyBEpN7CwRmWz3oqjbbKiVVAlzFp2Nc/edit?usp=sharing
>
>
>
>
> Get Outlook for iOS<https://aka.ms/o0ukef>
>
>
>
>
> On Thu, Mar 16, 2017 at 12:16 PM -0700, "S G" <[email protected]<
> mailto:[email protected]>> wrote:
>
> Hi,
>
> I am trying to make sense of number of threads seen in JConsole.
> It seems like a very high number of threads are launched per bolt thread.
>
>
> [cid:ii_j0crtbtm0_15ad8874d0924ae2]
> ​
> Experiment 1
> topology.workers.val=16
> spout.parallelism.val=1
> bolt1.parallelism.val=900
> bolt2.parallelism.val=160
> observation:
> Threads seen per node in jconsole = 1200
> Bolt threads per node = (900 + 160)/16 = 66
> Threads per bolt = 1200/66 = 18
>
>
> Experiment 2
> topology.workers.val=16
> spout.parallelism.val=1
> bolt1.parallelism.val=16
> bolt2.parallelism.val=16
> observation:
> Threads seen per node in jconsole = 61
> Bolt threads per node = (16+16)/16 = 2
> Threads per bolt = 61/2 = 30
>
> There are no other topologies running in my cluster.
> There are no other spouts/bolts running in my cluster except the ones
> mentioned above.
> I am running only one worker process per machine.
>
>
> So the question is how many threads per bolt are launched by storm?
> I am not interested in the exact number, but concerned about the high
> number of extra threads (18+ thread) for running a single bolt.
>
> Can we limit or optimize it somehow?
> Or if all of them are required, it would be good to document them
> somewhere.
>
> Thanks
> SG
>
>
>
>

Reply via email to