I usually start with Broker first, since it doesn’t depends on anything and a lot of components depends on it including IS. Then IS > MWS > the rest…
I would start with Broker, as IS depends heavily on it and tries to sync to Broker in startup. Starting IS after the Broker I experienced problems (at least with previous WM versions including 7.1.2). Usually I do
I think the fact that there’s no issue when starting IS first is because the IS usually take a little while to get to the point it needs Broker connectivity.
If the Broker server didn’t take that long to get started after the IS, it usually start up and running almost instantly due to the OS specific code base nature.
In the end I guess is the usual case of whatever works for you.
As v8 mentioned, it may not hurt to start IS first and Broker afterwards if Broker comes up fast enough and IS slow enough. But imho there is no reasen to start Broker not first. In contrary as most components are clients to the Broker, Broker should start first, so clients can connect.
Nevertheless the standard components should be able to recover if Broker comes up later, because that’s nearly the same behviour like an outage or failover of the Broker. If you have packages which do not load properly without Broker, you may check the reason for this and correct it to avoid problems in failover scenarios.
I usually follow the sequence below:
Broker > IS > Analytic Eng > Prediction Eng > Data Collector > MWS
The reason for starting MWS lastly is just to avoid having users hitting any page requiring the AE to be running, and then receiving an error message requiring them to contact the System Administrator.