Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

External Configuration Store Pattern #199

Open
satishnaidu opened this issue Aug 10, 2015 · 10 comments
Open

External Configuration Store Pattern #199

satishnaidu opened this issue Aug 10, 2015 · 10 comments

Comments

@satishnaidu
Copy link

satishnaidu commented Aug 10, 2015

Description:
The External Configuration Store design pattern involves storing configuration settings outside of the application, which allows for the modification of these settings without the need to redeploy the application. This pattern is particularly useful for cloud-based applications where environments can change dynamically, and configurations need to be updated frequently.

Main elements of External Configuration Store pattern:

  1. Configuration Source: A centralized external source where configurations are stored. This can be a database, a cloud-based service, or a configuration server.
  2. Configuration Retrieval: Mechanism to fetch the configuration from the external store. This can be done at application startup and periodically at runtime to ensure the latest configuration is always applied.
  3. Configuration Management: Tools and interfaces to manage, update, and monitor the configurations in the external store.
  4. Fallback Mechanism: In case the external configuration source is unavailable, the application should have a fallback mechanism, such as default settings or cached configurations.

References:

Acceptance Criteria:

  1. Implement a mechanism to retrieve configurations from an external store (e.g., AWS SSM, Consul, etc.) and apply them to the application at startup and during runtime.
  2. Create a configuration management interface to allow for easy updates and monitoring of configuration settings.
  3. Ensure a fallback mechanism is in place to handle scenarios where the external configuration store is unreachable. This should include default settings or cached configurations.
@npathai
Copy link
Contributor

npathai commented Aug 11, 2015

Just for reference https://msdn.microsoft.com/en-us/library/dn589803.aspx
@satishnaidu Thank you for showing interest in contributing. Yes you may go ahead. We welcome contributions 👍 . But I think we need to discuss how are we going to implement cloud design patterns. Put forward your thoughts @iluwatar @satishnaidu
I don't have any experience related to cloud technologies.

@npathai
Copy link
Contributor

npathai commented Aug 11, 2015

@satishnaidu We have how to contribute guidelines in README.md

@satishnaidu
Copy link
Author

Thanks @npathai , I have gone through the all the microsoft cloud design patterns, Some of the paterns like "Cache Aside pattern" , "Runtime Reconfiguration Pattern ", "External Configuration Store pattern" etc are really very usefull for all the applications apart from cloud.

I will create some sample interfaces and related impl classes for "External Configuration Store " pattern and share the details with you for further inputs from all.

@iluwatar
Copy link
Owner

@satishnaidu are you working on this pattern? I'm about to revert under construction label since there is no progress.

@iluwatar
Copy link
Owner

iluwatar commented May 1, 2016

This issue is free for taking again.

@satishnaidu
Copy link
Author

@iluwatar , Sorry for responding lately, I have these changes in my local...but before checking the code I just want to someone review it.
Because, It's not just plain java classes, It is using yaml file, jersey jars also to implement these pattern.
Please let me know how to proceed on this.

@iluwatar
Copy link
Owner

iluwatar commented May 2, 2016

Are the changes in your fork? I can take a look if you point me in the right spot.

@iluwatar
Copy link
Owner

iluwatar commented Jul 6, 2020

This issue is free for taking again.

@iluwatar
Copy link
Owner

@iluwatar
Copy link
Owner

Updated task description

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
Development

No branches or pull requests

3 participants