Hey people, I personally know how bad it can be when the C word is dropped in a technical conversation, 99% of the eyes in a room glaze over. I know, I was fully glazed all of but 6-12 months ago but then things just started to make sense.
So many clients struggle with caching and many end up pointing the finger at Matrix as the likely scape goat, which in some respects it is… but the truth is, no one has been kind enough to tell the poor little highland goaty oat what to do!
Getting the basics set up in admin mode (I mean basics) is so easy (so easy) it hurts:
>>> Cache Manager:
- Caching Status: On
- Default Expiry: 1hour
- Browser Expiry: 1hour
- Public Level Caching: On
>>> System Configuration:
- Send Cacheable Headers: Yes
Thats it! Suddenly Matrix is talking the talk and walking the walk, not only is it caching at an asset level wherever possible but it's also tells anything else that may be requesting a page to cache as well e.g. browser or proxy if one exists. If it still isnt working after those changes then its time to inspect the headers using something like ySlow or net tab for FireFox which usually ends in a chat to your friendly sys admin in order to correct web server settings like server/date times.
Just remember Matrix is the 'switch' in between all of this. Turn that little turkey on and the power will flow to the web server and in turn be passed to whatever knocks on its door for a chat. Flick the wrong switches and some rooms will be left in the dark and those that stepped in for a chat fumbling about to figure out exactly what to do.
99% of the cases I have corrected have been related to: cache manager turned on but system config still says 'no' for sending the headers… if the sys config setting says 'no' then your browser and proxy servers will hold on to little or no cache at all and Matrix becomes the 'little engine that couldnt'. If you dont have a proxy then its all good, the browser can still do a big chunk of the hard yards giving matrix and the web server more time to be friendly.
You might have noticed I set the expiry to 1hr. 1-4hrs is a very good idea for a new roll out, why? Because at least its working and its not at an expiry level which will totally confuse people who are new to the product. Scale it up or down as necessary.
What's even better than this? More settings and options of course! Once you have the above in place, proven, and working then start turning some of the other sys config options on as required, in many cases you probably wont even need to.
What's even better than that!!! OMG right click on the cache manager in the asset map, you can go to town for 'hot spots' in your websites and tell those pages (and any assets they use) to expire every 10mins if you wanted to. Saves your media/marketting team following steps ABC, XYZ, 123 to clear cache which = small wins for the web team, how good would your peeps look if they 'suddenly' saved marketting 60mins a day in cms overheads!
Of course there are question marks, but guess what… ask and you shall receive (get it S.Hall pretty funny yer?) lets dispell the myths together.
Who wants to go first? I know you all have your hands up.