То, что вы сами сочтете "важным", то и будет "сбрасывать" кэш.
Верного ответа нет. Смотрите еще, что такое Etag.
Вот здесь,
stackoverflow.com/questions/2285482/getting-etags-right , например, рассмотрено.
Если динамический контент управляется на Вашем сервере - можете кешировать его. Если Last modified ставите самый свежий, соответственно. Если на чужом сервере (сервис комментариев какой-нибудь), то тут уже в зависимости от того, нужно оно вам или нет.
Здесь нужно рассматривать из конкретной стоящей задачи.
По поводу того, как реализовано - в Rails реализовано так называемое
Кеширование матрешкой (Russian doll caching): Каждый блок, который вы кешируется и на основе хеша (изменение самого html шаблона или переданных туда обектов из которых Rails берет аттрибуты updated_at или сами их значения) отдает etag
Есть свои плюсы и свои минусы