Наверняка глупый вопрос, но: откуда сервер при формировании etag знает, изменился ли документ? Документ всегда формируется "полностью" (т.е. скажем данные _всегда_ берутся из БД) и при этом кэшировании мы выигрываем только на отсутствии пересылки документа клиенту?
Отсюда: если я хочу уменьшить нагрузку на базу, лучше использовать заголовок Cache-Control?
И последнее: сервер "у себя" хранит кэши документов (как браузер к примеру) или только управляет продолжительностью их жизни?
З.Ы. Рекомендации мемкешд, проксей и пожеланий докупить парочку серверов просьба не озвучивать.