оптимизация перенаправлений

многие сайты используют перенаправление посредством HTTP-кодов 301, 302. По сути, сервер говорит клиенту «я тебя понял, но лучше запрос формулировать вот так». В этом не было бы проблемы, если б скорость света была бесконечной. А в нашей вселенной это приводит к дополнительному пробегу сигнала от клиента к серверу и обратно и потерям времени.

вчера вечером мне пришла в голову мысль, что для многих клиентов этот процесс можно было бы оптимизировать, отдавая конечную страницу сразу, но с маленьким куском яваскрипта, который делал бы подмену адреса на canonical URL уже в браузере. Утро вечера мудренее, и сегодня я хорошо представил разнообразные проблемы, которые от этого возникают. Зато понял, каким должно быть решение.

в spdy вроде уже есть, а в http2 должна быть поддержка server push. Так что в случае перенаправления сервер может просто сразу же писать в то же соединение ответ на ещё не случившийся запрос с правильным адресом. Чистота стандарта соблюдена, браузер получил всё необходимое с первым ответом сервера, все довольны.

Артемий Трегубенко,
, , ,

comments powered by Disqus