The Magento page cache library contains a simple PHP reverse proxy that enables page content caching. There are two types of distinguished content: private and public.

The “private” content is being served for each user separately and represents the personalized data of a customer. E.g. shopping cart, wishlist, customer addresses, notification messages. This data should not be cached on the server side, and should not be shown to more than one user. The private content is stored on the client’s side by Customer Data JS component (Magento_Customer/js/customer-data.js). However, this is a topic for another blog post. Today we will focus on the second content type – public content, or rather the cacheable content and its variations in terms of customer grouping.

Working-with-Magento-2-Cache

Sometimes Magento developers face the need to work with Magento caches programmatically. For example, when you develop your custom module, which renders some content on front-end and this content can be managed via Admin Panel. Let’s say it is cached by the Full Page Cache (FPC). In this case you will need to notify the user that one of the cache types is invalidated and should be refreshed in order to have the changes applied. You might even want to refresh the FPC automatically with each modification. Magento 2 allows this to be performed quickly and easily.