Externalizing the application configuration
Irrespective of the size and complexities of a microservice application, the task of maintaining the configuration settings for each service seems one of the most crucial aspects of working with microservices. Decoupling the service configurations goes back to our earlier discussion on separating the concerns. In the earlier chapters, we have seen how we can handle service configurations using the application.properties
files. Though this is a step up from not hard-coding these configurations in production code, it's still not enough.
One of the key requirements for any microservice is agility. An ideal microservice should be flexible and rapid in addressing any change in the user's requirements, as well as handling code defects or network issues. Having said that, each enterprise application needs to meet the specific demands of compliance and auditing, which implies that a developer often can't just deploy a code artifact...