The controller acts as the entry point to a cluster of connected workers. All registration and invocation requests are assumed to be routed through the controller.
The controller will search along these paths for the configuration. Later values should override those in earlier paths.
./load_balancer/src/load_balancer.json(based on the launch location of the root directory on launch)./load_balancer/src/load_balancer.dev.json(based on the launch location of the root directory on launch)- A file path set using the
--configflag to the executable.
Configuration via environment variables is also supported.
The must be prefixed with ILUVATAR_CONTROLLER, and traversing down objects are separated by a double underscore __.
So config.load_balancer.algorithm transforms to ILUVATAR_CONTROLLER__load_balancer__algorithm.
For example.
ILUVATAR_CONTROLLER__load_balancer__algorithm='RoundRobin' ./iluvatar_controller --config /my/config/path.jsonSee this Rust file for details on the configuration file and their descriptions.