When developing big distributed apps, it is usually considered a good thing to separate the app configuration from its business logic. For this purpose developers often use a configuration file or a separate configuration-managing service. But how does the reboot proceed?
What if we want to reboot not the whole config, but only the modified parameter, and don't want to wait for scheduling? What if we want to describe more complex scenarios of parameter reboot, such as database connection reboot or external service restart?
Together we'll try to work out how to make such a solution and integrate it into your project. We'll learn how to use Scala and its reactive libraries, especially Monix, for this purpose. We'll learn how to store configuration in systems like etcd or Consul.
No functional programming hardcore, we promise.