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

Implementing caching (Redis, Varnish,...) #75

Open
netsensei opened this issue Nov 16, 2018 · 0 comments
Open

Implementing caching (Redis, Varnish,...) #75

netsensei opened this issue Nov 16, 2018 · 0 comments

Comments

@netsensei
Copy link
Contributor

The application should be able to serve cached content in order to keep the number of transactions on the database to a minimum.

Detailed description

When a GET requests are posted to the Datahub, the generated XML content is fetched from a key/value store such as Varnish or Redis. The Datahub only gets requests when content doesn't exist in the caching store. When records receive an update through the API, the content in the store is invalidated and removed.

Context

This is necessary if we want the application to scale up. That is, serve more consumers of data concurrently without the app crashing or breaking.

It would vastly improve delivery speed of content. In other words, improved throughput of information improves the appeal to use the datahub to serve large batches of records.

Possible implementation

Symfony 3.4 and 4.1 support an advanced PSR-6 compliant caching component. The component has a host of caching adapters for various caching solutions.

Once a migration to a more recent version of Symfony has been completed, this could be implemented. (See: #29)

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

No branches or pull requests

2 participants