Configuration management
Very often, you may have seen improper configuration management or the lack of it create problems at a later point in the development and maintenance life cycles. Another problem is when scalability comes into picture and more nodes of software are added; then, maintaining state across all the nodes becomes a challenge. Business applications have been relying on RDBMS to store configuration data. The problem with this approach is performance; if the design is PULL-based and the problem with PULL-based design is performance penalty. Another problem is if the concurrency is high (because of other business functionalities), then these RDBMS also have to cater to these requests as well as the requests for configuration data.
The idea is to convert the design from PULL-based to PUSH-based. The big advantage of this technique is performance. The state or configuration data stays close to the application, and whenever change takes...