Browse Source

Docs - Add more details to the performance page & update getting started link

- Link getting started section to elasticsearch backend, not performance page as this is more relevant.
- Mention frontend caching on performance page
- Mention prefetching image renditions on performance page
Jake Howard 1 year ago
parent
commit
ef27a27c1a

+ 1 - 0
CHANGELOG.txt

@@ -44,6 +44,7 @@ Changelog
  * Docs: Move the tutorial’s snippets section to come before tags (Damilola Oladele)
  * Docs: Rewrite the getting started tutorial according to address identified friction points (Damilola Oladele)
  * Docs: Update the deployment documentation page and remove outdated information (Jake Howard)
+ * Docs: Add more items to performance page regarding pre-fetching images and frontend caching (Jake Howard)
  * Maintenance: Switch to ruff for flake8 / isort code checking (Oliver Parker)
  * Maintenance: Deprecate `insert_editor_css` in favour of `insert_global_admin_css` (Ester Beltrami)
  * Maintenance: Optimise use of `specific` on Task and TaskState (Matt Westcott)

+ 11 - 1
docs/advanced_topics/performance.md

@@ -44,7 +44,7 @@ CACHES = {
 }
 ```
 
-### Image URLs
+## Image URLs
 
 If all you need is the URL to an image (such as for use in meta tags or other tag attributes), it is likely more efficient to use the [image serve view](using_images_outside_wagtail) and `{% image_url %}` tag:
 
@@ -58,8 +58,18 @@ Another side benefit is it prevents errors during conversation from causing page
 
 The same can be achieved in Python using [`generate_image_url`](dynamic_image_urls).
 
+## Prefetch image rendition
+
+When using a queryset to render a list of images or objects with images, you can [prefetch the renditions](prefetching_image_renditions) needed with a single additional query. For long lists of items, or where multiple renditions are used for each item, this can provide a significant boost to performance.
+
 (performance_page_urls)=
 
+## Frontend caching
+
+Many websites use a frontend cache such as Varnish, Squid, Cloudflare or CloudFront to gain extra performance. The downside of using a frontend cache though is that they don't respond well to updating content and will often keep an old version of a page cached after it has been updated.
+
+Wagtail supports being [integrated](frontend_cache_purging) with many CDNs, so it can inform them when a page changes, so the cache can be cleared immediately and users see the changes sooner.
+
 ## Page URLs
 
 To fully resolve the URL of a page, Wagtail requires information from a few different sources.

+ 1 - 1
docs/getting_started/index.md

@@ -21,4 +21,4 @@ Developers appreciate Wagtail's highly customizable and modular architecture, wh
 
 Wagtail stands out as the preferred choice for tens of thousands of organizations globally, including renowned names like Google, NASA, and the British NHS. It has proven scalability, capable of handling high volumes of traffic from millions of visitors every month. What sets Wagtail apart is its ability to extend beyond traditional content management, providing seamless integration with data tools and rich data visualizations.
 
-For more information about Wagtail and the guiding principles for building websites with it, read [the Zen of Wagtail](the_zen_of_wagtail).
+For more information about Wagtail and the guiding principles for building websites with it, read [the Zen of Wagtail](the_zen_of_wagtail).

+ 1 - 1
docs/getting_started/quick_install.md

@@ -47,7 +47,7 @@ If you want to add Wagtail to an existing Django project instead, see [Integrati
 
 There are a few optional packages that are not installed by default. You can install them to improve performance or add features to Wagtail. These optional packages include:
 
--   [Elasticsearch](/advanced_topics/performance)
+-   [Elasticsearch](wagtailsearch_backends_elasticsearch)
 -   [Feature Detection](image_feature_detection)
 
 (common_installation_issues)=

+ 1 - 0
docs/releases/5.1.md

@@ -74,6 +74,7 @@ Thank you to Damilola for his work, and to Google for sponsoring this project.
  * Mark LTS releases in release note page titles (Thiago C. S. Tioma)
  * Revise main Getting started tutorial for clarity (Kevin Chung (kev-odin))
  * Update the [deployment documentation](deployment_guide) page and remove outdated information (Jake Howard)
+ * Add more items to performance page regarding pre-fetching images and frontend caching (Jake Howard)
 
 ### Maintenance