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.



​
*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