Кеширование
ETag: свободное припоминание
Припоминание сильнее перечитывания. На каждый промпт проговори или запиши полный ответ по памяти, прежде чем открыть модельный, — именно усилие припоминания закрепляет механизм, когда ты смотришь на реальную ленту DevTools.
Восстанови спину юнита — что экономит 304, рукопожатие «отпечаток-эхо-сравнение», strong vs weak валидаторы, ETag vs Last-Modified и поюнитный сбой — не подглядывая в урок.
- 01Коллега говорит, что ETag делают повторные запросы бесплатными. Поправь точно: что экономит 304 и что всё равно стоит?
- 02Пройди рукопожатие conditional request от начала до конца, называя заголовки и статусы.
- 03Объясни strong vs weak валидаторы и где различие действительно играет.
- 04Сравни ETag и Last-Modified. Когда Last-Modified недостаточно и почему?
- 05Почему добавление второго и третьего сервера часто убивает 304, и как сделать ETag устойчивыми к балансировщику?
- 06Как сжатие взаимодействует с сильным ETag и в чём ловушка?
Если ты смог восстановить каждый ответ по памяти, ты держишь спину юнита: 304 экономит тело, но не круговой обход; рукопожатие — это «отпечаток-эхо-сравнение» поверх ETag и If-None-Match; сильные валидаторы обещают побайтовую идентичность, а слабые — семантическую эквивалентность, причём If-None-Match сравнивает слабо, так что различие в основном играет для range; ETag обходит секундную слепую зону Last-Modified; а ревалидация выживает за балансировщиком, только когда ETag — чистая функция контента, включая его кодировку.