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

Proper build caching #4

Open
jessevdp opened this issue Nov 27, 2019 · 2 comments
Open

Proper build caching #4

jessevdp opened this issue Nov 27, 2019 · 2 comments
Labels
enhancement New feature or request

Comments

@jessevdp
Copy link
Contributor

The plugin has to request data from Umbraco for every content item. If a site has 100 content items, that means the plugin has to send 100 GET requests to the remote Umbraco server every time the site is rebuilt. If only a single content item was altered, that means 99% of those requests were unnecessary.

If the site includes a bunch of images or other media files, these are re-downloaded as well—even when they weren't changed.

Proper build caching could make a huge difference here, especially for larger projects.

@jessevdp jessevdp added the enhancement New feature or request label Nov 27, 2019
@jessevdp
Copy link
Contributor Author

To check if a certain node has been updated since the last build we could include a "last updated" timestamp on every sitemap node. The plugin could save a timestamp for the last build in it's cache and use it to determine if a given node has been updated since the last build, and thus: if it needs to be reloaded.

Perhaps we can create something similar for media (files). Although gatsby-source-filesystem might already do something to cache remote files.

Useful:

Before hacking away at this I first want to get a better understanding of what is happening already and how caching should be implemented.

@jessevdp
Copy link
Contributor Author

Note that #3 is also related to caching.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

1 participant