Веб-шлак

Dec 13, 2018 11:30

Это я про nginx, да.

В очередной раз убеждаюсь, какой же это шлак. Не, файлики он отдаёт прекрасно. И даже апликацию за ним можно гонять. Ресурсов мало жрёт, конфиги простые (простые конфиги простые, а вот сложные конфиги - уууу). Но шлаком не перестаёт быть.

В конкретно данный случай я говорю про его кэш (nginx - реверс-прокси, т.е. кэш вообще там - базовая сущность должна быть).

Например, в мире победившего http/1.1 (ну условно), есть заголовок Vary, который определяет, чё и как хранить. Определяет, что характерно, со стороны апликации. Логично же, что апликации лучше знать, чё кэшировать (псевдостатическое говно), а чё нет (инбокс юзера).

В мире apache всё логично. В доке прямо так и написано: "mod_cache implements an RFC 2616 compliant HTTP content caching filter, with support for the caching of content negotiated responses containing the Vary header.".

И они реально смотрят в Vary и кэшируют, чё там прописано.

Чё, ваш фреймворк не умеет генерировать корректный Vary? Тогда вам место в nginx.

Nginx умеет гибко настраивать кэширование по чему угодно, хоть по чёрту лысому.
Кэшировать, игнорируя query-params? Легко. Практически, по-дефолту.
Кэшировать куки? Да запросто. Только попроси.
Смотреть в поле Vary? Ну... Это нужная чёрная магия. Например, убрать лимит на 42 символа в поле Accept, при Vary: Accept.

web, nginx, apache

Previous post Next post
Up