Skip to content

Make SchemaController and SchemaCache stateless #7950

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

Open
3 tasks done
PiotrZawadzki-TomTom opened this issue Apr 26, 2022 · 1 comment · May be fixed by #7951
Open
3 tasks done

Make SchemaController and SchemaCache stateless #7950

PiotrZawadzki-TomTom opened this issue Apr 26, 2022 · 1 comment · May be fixed by #7951
Labels
type:feature New feature or improvement of existing feature

Comments

@PiotrZawadzki-TomTom
Copy link

New Feature / Enhancement Checklist

Current Limitation

Currently Schema-controller, database-controller and schema cache is a singleton and it makes whole parse-server statefull

Feature / Enhancement Description

The concept is to make schema logic stateless and make possible to override in parse-configuration schema cache, so that it is possible to e.g cache it in Redis or another custom solution

Example Use Case

We are going to run multitenant parse server with cloud code. Due to limitations of Cloud code (which we have a lot in our application) we cannot just run multiple instances of parse-server in single node process. We are running single parse instance but we have overridden database adapter to choose appropriate mongo-url every call (we are using CLS to have consistent request objects). The same we have done with caches and thanks to this PR it is possible to apply this strategy to parse schema cache.

Alternatives / Workarounds

NA

3rd Party References

NONE

@parse-github-assistant
Copy link

Thanks for opening this issue!

  • 🎉 We are excited about your ideas for improvement!

@pzawadzki-pronos pzawadzki-pronos linked a pull request Apr 26, 2022 that will close this issue
7 tasks
@mtrezza mtrezza added the type:feature New feature or improvement of existing feature label Apr 27, 2022
@mtrezza mtrezza linked a pull request Apr 28, 2022 that will close this issue
7 tasks
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
type:feature New feature or improvement of existing feature
Projects
None yet
Development

Successfully merging a pull request may close this issue.

2 participants