Pull to refresh
5
Сергей@gearss

User

1
Subscribers
Send message
«Penis Land» — страна пенисов.
У автора хорошее чувство юмора
Автор, заботьтесь о читателях!

Вместо:
if route_path.endswith('/'):
repeat=True
while repeat:
route_path = route_path[:-1]
repeat = route_path.endswith('/')

Напишите:
route_path = route_path.rstrip('/')
Вот ещё «перлы»:

1. setattr(f,'method','local')
а можно
f.method = 'local'

2. attrib = control.__dict__[item].__dict__['method']
а лучше
attrib = getattr(control, item).method

3. except: pass
а вот так лучше вообще не писать

там ещё много такого
Цитата, вынесенная в заголовок, весьма интересна:
… вы начинаете с того места откуда начинали.

а можно ли иначе? начать не с начала?
Данный вариант не будет работать в 100% случаев. Например:
"abc\\" — строка из 4х символов (последний: слэш) — не будет отпарсена правильно

А вот вариант, приведённый автором в конце статьи, будет работать корректно.
Зайдите на google.ru и введите, например, «ujhjl».
Всплывает окошко подсказок, где 1й в списке вариант — «город».
Т.е. гугл уже умный, ждём когда подтянутся браузеры.
если вдруг стреляться, то только ха это :)
(автор) Да, действительно, не разбираюсь в особенностях технологий связи.
В свете того, что объём данных до 1500 байт передаётся одним пакетом, поставленный воспрос действительно не иеет смысла.
Да и без Accept-Encoding, Cookie и Connection: keep-alive сегодня тоже было бы сложновато.
Тот, к которому было открыто подключение на 80й порт.
Видимо, в 1996 ещё не придумали VirtualHost и прокси.
Не путайте заголовки запроса с заголовками ответа.
Если открыть эти 74 ресурса в IE (~460 байт на запрос), получим 33Кб передаваемых данных. Из них полезная инфоррмации (сам url + необходимые заголовки) составляет до 30%. Получаем 70% избыточности.
Уточнение — браузер открывает 2 соединения, и передаёт ресурсы по ним последовательно (современные браузеры — 6 соединений).

Типичный сценарий: загружаем хабр (72 ресурса). Firefox тратит 50ms на открытие 6 соединений (паралллельно), и передаёт в среднем по 12 ресурсов по каждому.
Вы загрузили один ресурс большого объёма (html страница).
Когда же вы загружаете страницу в браузере, запрашивается множество (обычно) мелких изображений.

html — избыточность прекрасно убирается засчёт сжатия страницы + gzip сжатие (Transfer-Encoding).
tcp — высокоэффективный бинарный протокол, бороться бесполезно.
Суть в том, что все современные браузеры поддерживают все кодировки.
Хаос который творится с User-Agent, подробнее описан на хабре раньше.

Не призываю менять существующие наработки, вы меня неправильно поняли.
http является расширяемым протоколом с огромной поддержкой софта и железа — уходить от него было бы глупо.
Не выдвигалась идея что-либо менять в протоколе http.
Хотелось донести, что избыточной информации много, и не зря разработчики из Yahoo советуют минимизировать число запросов (совет номер 1).
<irony>А у вас другой глобус есть ?</irony> ©
Наверное, это зависит от браузера.
Я разрабатываю в Firefox, и могу сказать точно, что он криворукости не прощает.
Т.е. если поставить скрипт с обращением к элементу, который ещё не успел подгрузиться, то вылезет ошибка.

Тут ещё зависит от того, где расположены тэги подгрузки скриптов <script>
Не зря developer.yahoo.com советует грузить скрипты в конце страницы, где возможно.
Там по ссылке ещё много интересного, разработчики JS должны были это уже видеть.
Ну, если проверялась способность браузеров рендерить страницу по мере загрузки, то следовало применить другой метод:
а. Создать HTML страничку размером до 1Мб (без яваскрипта)
б. Загружать её на модеме по вашей методике.

Вы убедитесь в том, что увидите верхнюю часть страницы до того как она (страница) подгрузится полностью (т.е. до того как ваш прокси просигналит)

Если же страница содержит яваскрипт, то браузер грузит его (JS файл) и тормозит рендеринг страницы до окончания загрузки.
Т.е. в вашем «тестировании» с 6/8/15 JS файлами вы фактически замеряли скорость их загрузки, а не скорость рендеринга HTML.

Information

Rating
Does not participate
Location
Курск, Курская обл., Россия
Date of birth
Registered
Activity