Right now when start-cluster is run it determines how many instances to start in parallel by taking the admin threadpool number and dividing it in half. So if the admin thread pool max size is 50 it will start up to 25 instances concurrently. This works great if the instances are spread across a number of machines, but if all the instances are on the same machine, or worse local to the DAS, then this can be inefficient.
A couple ways to address this:
- Add an option to start-cluster to indicate how many instances to start in parallel (--parallel #)
- Add a property or environment variable to indicate how many instances to start in parallel.
- Make the algorithm in start-instance smarter so that it limits the number of simultaneous instances started on any given node.
I'm thinking the first option probably makes the most sense.