Заголовки в нижнем регистре [закрыто]

Я заметил одну вещь в веб-серверах CloudFlare и Google: они оба используют заголовки ответов в нижнем регистре. Это просто для внешнего вида, или это действительно обеспечивает увеличение производительности? Я подумываю об этом для своей пользовательской сборки nginx, но пока я не совсем уверен, будут ли какие-либо негативные/позитивные последствия. Я знаю, что в спецификации RFC 2616 по HTTP 1.1 говорится, что заголовки не чувствительны к регистру, поэтому я уверен, что это не вызовет никаких проблем, иначе Google и CloudFlare не стали бы их использовать.

Пример заголовков ответа от google.com:

HTTP/1.1 200 OK
status: 200 OK
version: HTTP/1.1
cache-control: private, max-age=0
content-encoding: gzip
content-type: text/html; charset=UTF-8
date: Tue, 22 Jan 2013 20:58:07 GMT
expires: -1
server: gws
x-frame-options: SAMEORIGIN
x-xss-protection: 1; mode=block
0
задан 22 January 2013 в 23:02
1 ответ

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

Google и CloudFlare используют протокол SPDY (рядом с HTTP), который явно требует заголовков в нижнем регистре .

Строчные символы быстрее набираются (не требуется клавиша Shift) и могут сэкономить целую секунду в процессе разработки, но их использование не окажет никакого влияния на производительность - строчные буквы нельзя t любые "меньшие" на проводе, чем заглавные.


Если вы знаете, что все будет в нижнем регистре, вы можете избежать нечувствительного к регистру синтаксического анализа / сравнения в своем программном обеспечении, торгуя надежностью (и соответствием RFC) для незначительного увеличения скорости.
Это определенно не ХОРОШАЯ идея (вы не знаете, что отправят ваши клиенты). Я бы вообще не стал возиться с обработкой заголовков в nginx, если бы для этого не было действительно веской причины. Это написано, это работает, и у вас больше шансов что-то сломать, чем что-то улучшить, если вы начнете возиться с этим.

3
ответ дан 4 December 2019 в 12:40

Теги

Похожие вопросы