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

Enable Service to run locally #387

Open
5 tasks
jeffmcaffer opened this issue Feb 8, 2019 · 0 comments
Open
5 tasks

Enable Service to run locally #387

jeffmcaffer opened this issue Feb 8, 2019 · 0 comments
Labels

Comments

@jeffmcaffer
Copy link
Member

jeffmcaffer commented Feb 8, 2019

In some scenarios teams want to run the Service locally

  • maintains privacy as the users never have to tell ClearlyDefined what components they are using
  • insulates the consumers from downtime in api.clearlydefined.io
  • takes load off of the public service

There are several topics around doing this

  • Replicating the data. The data layer of ClearlyDefined is not exposed and is subject to change. As such, we do not want to go give local services direct access to the shared data storage. In addition, using the shared data would still have the issues raised above. As such, we need a way of periodically or continuously updating a local data store. See Need way to mirror definitions #386 for more info.
  • Local scenarios should be read-only. It is critical that there is one source of truth and we not introduce data inconsistencies.
  • Local scenarios may have different data stores from the main service. A simple version would just put the data in the local file system.
  • Local servers, being read-only, need not ever compute a definition
  • lazy harvesting. Should accessing a missing definition on a local machine trigger harvesting in the public service. That could be a switch as it does leak some amount of what the team is using.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

3 participants