Our current configuration file setup is optimized for ease of testing. This is not at all a problem, but it does occasionally have its drawbacks and it has major negatives for anyone wanting to run a copy of this system in a more realistic environment. Namely, it makes it impossible to increase the number of components in the system dynamically (because the configuration file change would need to be disseminated to all components).
What form this would take is not necessarily clear; perhaps the obvious incremental step is to make configurations specific to a given component, and while that increases flexibility some, it doesn't wholly solve the issue.
Our current configuration file setup is optimized for ease of testing. This is not at all a problem, but it does occasionally have its drawbacks and it has major negatives for anyone wanting to run a copy of this system in a more realistic environment. Namely, it makes it impossible to increase the number of components in the system dynamically (because the configuration file change would need to be disseminated to all components).
What form this would take is not necessarily clear; perhaps the obvious incremental step is to make configurations specific to a given component, and while that increases flexibility some, it doesn't wholly solve the issue.
Related reading: #81
cc @kylecrawshaw and @metalicjames