Launch Script

Human variations will prevent any distributed system with more than a dozen parts from ever being launched manually the same way twice.

Therefore: Write and run one single script to launch all components of the system. Test configurations by varying this one top-level description. Construct a shut-down script during launch.


I watched this pattern work extremely well for a group working on the their second attempt to build a highly distributed system. Implementation is non-trivial but straightforward using various remote bootstrapping techniques. It compared favorably (at least in a laboratory setting) to the OrganicDefense strategy employed by a competing team. -- WardCunningham


We use launch scripts too, and Apache has "apachectl start | stop | ...". I recently wrote a related "build environment" script that bootstraps a personal working directory for a rather complex piece of software relying on many 3rd party sources, which of course have to be compiled in a certain order.

Basically, it's the old rule ThreeStrikesAndYouAutomate.

-- JuergenHermann


EditText of this page (last edited October 31, 2009) or FindPage with title or text search