This module implements a views cache plugin that is aware of content and can provide caching for views, until the content in those views changes.
Just enable the module, find the views that you'd like to enable caching for, edit and select the 'Content-based' cache option in the 'Caching' option on the 'Basic settings' section. Then choose which cache segments to monitor for changes, and optionally set some min/max cache lifetimes.
Full details are in the documentation.
If you were running a version of the 1.x series, then you'll want to reset any views you have to not use any caching, then upgrade the module.