Github user clockfly commented on the pull request:
https://github.com/apache/incubator-storm/pull/103#issuecomment-43716283
> Do you mean that allocating one worker per node is better than several
workers per node as the netty threads from different worker process will
compete with each other ?
It depends. Executor is the basic unit of parallism, suppose executor
number is the same, adding a worker will add more traffic, but if it is
co-located with other worker, it may also increase the bandwith of intra-worker
communication(as we do intra-process communication instead of intra-machine).
For example, 1, 1, 1 (means 3 machine, one worker on each) may be faster
than co-located 4, 4, 4
But co-located 3, 0, 0 may be faster than distributed 1, 1, 1. This
requires experiment to verify it is better or worse.
>And i think using several netty threads working in sync and non-batch mode
may have some what the same effect with using only one netty threads working in
async and batch mode. Maybe i should test this out. By the way, what storm
version do you use in the test ?
Yes, sync-async can only give us pointers about what could be the possible
bottleneck, these need continous profile-tune experiments to prove our guess.
By the way, I use storm-0.9 release version.
---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at [email protected] or file a JIRA ticket
with INFRA.
---