In a series of blog posts we will go through how caching works in Drupal 8, to try to demystify the caching layer in Drupal 8 for developers.
Planned blog posts are (this will be linked from here when they are up)
- Introduction
- How it worked, and what we wanted to be solved in D8
- Cache metadata - overview
- Cache keys
- Cache context
- Cache max-age
- Cache tags
- Twig cache
- Core cache services
- Internal Page Cache
- Internal Dynamic Page Cache
- Creating your own cache tags
- Creating your own cache context
- Define and use your own cache bins
- Solutions for working with good caching of Views
- Disable caching – why, when and how
- Cache tags together with Varnish
- Cache bins in Memcache/Redis/whatever
- Wrapping it up
The plan is to finish this series in a months time, with a couple or more of blog posts per week. Many parts of the series is loosely based on a session I did for DrupalCamp Northern Lights this February. But, here I will have the time to go into more detail, and with more code examples.
We started early to work with Drupal 8, our first project was this site, and after that we started to deliver Drupal 8 sites to our clients. We learned a lot during all the projects, and hopefully I will be able to share to you all the stuff that the learned about the caching layer in an understandable way. So this knowledge is based on trial and error on real projects.
Target audience for this blog series is both backend and frontend developers.