Открыть список
Как стать автором
Обновить
  • по релевантности
  • по времени
  • по рейтингу

Бета-тестер Starlink сообщил о рекорде скорости загрузки в 190 Мбит/с

Беспроводные технологииРазработка систем связи
image На очередном этапе бета-тестирования, запущенного ранее в этом месяце, спутниковому интернету Starlink удалось достичь рекорда скорости загрузки в 190 Мбит/с. Тест проводился пользователем, проживающим в Северо-Восточной Монтане.

Монтана стала одним из первых штатов, где SpaceX установила свои наземные станции.

Результаты, опубликованные в Facebook, показывают, что с помощью Starlink удалось загружать данные со скоростью 190 Мбит/с для устройства, подключенного через Wi-Fi.

Несмотря на то, что компания плавно наращивает скорость загрузки, задержка по-прежнему выше, чем планировалось. Задержка в 112 мс более чем вдвое выше той, которую обещали в SpaceX для бета-версии, а также намного превышает верхний предел октябрьских данных компании между 60 и 70 мс.
Читать дальше →
Всего голосов 11: ↑11 и ↓0 +11
Просмотры5.3K
Комментарии 8

Чтобы ускорить Chrome, браузер Mighty рендерит веб-контент на стороне сервера и отсылает пользователю

Google ChromeОблачные вычисленияБраузерыОблачные сервисы

Разработчики браузера Mighty придумали, как ускорить работу Chrome. Они решили задействовать облачные технологии, чтобы стримить из облака.

Читать далее
Всего голосов 17: ↑16 и ↓1 +15
Просмотры6.7K
Комментарии 44

Как gzip-сжатие влияет на производительность сервера

Клиентская оптимизация
Несколько статей и переводов по оптимизации (gzip для Apache, gzip для CSS- и JS-файлов, CSS-сжатие, JS-сжатие) уже затрагивали тему применения архивирования для уменьшения размера файлов, и, тем самым, увеличения скорости их передачи конечному пользователю. В данном исследовании я задался вопросом: а как динамическое gzip-сжатие влияет на быстродействие сервера? Рентабельно ли включать mod_gzip / mod_deflate для высоконагруженных проектов? И в каких случаях архивирование вообще лучше не использовать?

Отдельно хочется сказать спасибо одному из читателей Хабра, который в личной переписке (к сожалению, исходное письмо безвозвратно потерялось, поэтому буду признателен, если он о себе напомнит) настойчиво пытался прояснить этот вопрос, что послужило отличным стимулом для написания данной статьи.

читать дальше на webo.in →
Всего голосов 58: ↑55 и ↓3 +52
Просмотры3.4K
Комментарии 40

Как все начиналось, или сам себе стартап

Клиентская оптимизация
Уже больше трех месяцев Web Optimizator живет и работает. Надеюсь, что основная его задача — изменить представление о скорости загрузке и работы сайтов — так или иначе достигается. Все больше веб-разработчиков используют «продвинутые» технологии для создания своих продуктов. Сознание пользователей начинает привыкать к мысли о том, что «быстро» — это когда сайт загружается за 2–3 секунды, а не за 10–20.

Хочу немного рассказать о том, что лежало в предыстории проекта, о появлении самой мысли о том, как мир можно сделать лучше (=быстрее), и ее материализации именно в таком виде. О том, как можно найти идеи для создания технологичных проектов и сервисов. О том, как можно развиваться. Может быть, кто-то подчерпнет из этой истории уверенности и оптимизма, а кто-то — просто практических советов.

Читать дальше →
Всего голосов 71: ↑66 и ↓5 +61
Просмотры536
Комментарии 34

Исследование степени gzip-сжатия и загрузки процессора

Клиентская оптимизация
Статья «Как gzip-сжатие влияет на производительность сервера» вызвала вполне понятную, но несколько неоднозначную реакцию, ибо было не понятно, насколько сильно издержки на gzip зависят от степени сжатия и как ее прогнозировать с учетом всех остальных параметров. Хочется сказать отдельное спасибо посмотреть профиль alfa, который, собственно, и поднял этот вопрос.

Итак, новая серия тестов была направлена на установление зависимости между степенью сжатия, процессорными издержками и уменьшением размера файла, чтобы на основе этих данных сделать аналитический инструмент для вычисления оптимальной степени сжатия.
Читать дальше →
Всего голосов 30: ↑30 и ↓0 +30
Просмотры5.8K
Комментарии 28

Скорость выборки CSS-селекторов в JavaScript-библиотеках

Клиентская оптимизация
Наряду со сравнительными тестами времени загрузки различных JavaScript-библиотек было интересно посмотреть, насколько оптимизированы в них наиболее популярные действия, а именно: выбор элементов по CSS-селекторам. Ведь даже в простейшем JavaScript-коде на основе таких библиотек используется, порой, несколько десятков таких операций, не говоря уже о сложных интерфейсах и полноценных веб-приложениях.

Приведу характерный пример кода для jQuery, который использует движок CSS-селекторов:

$(function(){
    $("a.clip").click(function(){
        $("#clip"+$(this).attr("rel")).slideToggle(500);
        if($(this).html() == "+") {
    $(this).html("–");
        } else {
    $(this).html("+");
        }
        return false;
    });
})


читать дальше на webo.in →
Всего голосов 26: ↑24 и ↓2 +22
Просмотры1.6K
Комментарии 13

Разгоняем CSS-селекторы: id против class, раунд второй

Клиентская оптимизация
В первой статье цикла я уже рассматривал скорость работы движка, ответственного за создание и отображение HTML-страницы на экране. Однако, сейчас речь пойдет о несколько другом аспекте, нежели движок CSS-селекторов. Данная серия тестов была посвящена скорости создания отдельного HTML-документа.

Методика



Если в первых двух исследованиях ставилась под вопрос скорость распознавания браузером CSS-правил и их применение, то сейчас интересовал другой вопрос, а именно: как быстро браузер создает DOM-дерево в зависимости от наличия в нем элементов с id или class?

Для этого было подготовлено 3 набора HTML-файлов. Первый содержал 10000 элементов, у которых часть имеет id (количество именованных элементов варьировалось от 50 до 10000). Во втором HTML-файлы были, практически, идентичными, только вместо id имели атрибут class. В третьем наборе в DOM-дереве были только элементы с id (т.е. варьировалось само число элементов). Соответственно, все измерения проводились в скрытом iframe, чтобы избежать отрисовки загружаемой страницы на экране.

читать дальше на webo.in →
Всего голосов 47: ↑42 и ↓5 +37
Просмотры5K
Комментарии 31

Разгоняем favicon.ico — это как?

Клиентская оптимизация
В очередной презентации Yahoo! о клиентской производительности был поднят вопрос о favicon.ico. Они проводили несколько интересных фактов о данном явлении и давали пару советов. Процитирую их рекомендации:

  • www.example.org/favicon.ico
  • Необходимое зло:
    • Браузер ее запросит
    • Лучше не отвечать 404-ошибкой
    • Будут отправлены cookie
    • Не может быть в CDN
    • Мешается в последовательности загрузки ресурсов
  • Уменьшайте ее (<=1 Кб)
  • Использовать анимированные иконки ни разу не хорошо
  • Выставляйте заголовок Expires
  • Инструменты: imagemagick, png2ico, favicon.ru
  • Материал для изучения: в поиске Yahoo! favicon.ico занимает 9% всех просмотров страниц (для webo.in это 7%)




Поскольку favicon.ico не является обычной картинкой при загрузке сайта (она, во-первых, запрашивается едва ли не один-единственный раз браузером при посещении сайта, во-вторых, загружается, игнорируя обычный порядок загрузки), то в дополнение к уже имеющейся информацией я захотел провести ряд дополнительных исследований и объединить все, что известно прогрессивному человечеству на данную тему. Однако, в ходе изучения материала оказалось, что проблема совсем не так прозрачна, как представлялось изначально. Формат .ico предстал в новом, весьма выгодном для использования в вебе, свете.

читать дальше на webo.in →
Всего голосов 100: ↑94 и ↓6 +88
Просмотры4.6K
Комментарии 48

Принципы «ненавязчивой» рекламы

Клиентская оптимизация
Сразу хочу оговориться, о чем пойдет речь в данной статье. Я собираюсь изложить свои представления о том, как стоит организовывать размещение рекламы на веб-страницах для того, чтобы доставить посетителям сайтов минимум неудобств. Поскольку, большинство выводов последуют из анализа техник «ненавязчивого» JavaScript, то статья озаглавлена именно таким образом. Я не собираюсь анализировать, в каких случаях пользователи видят банеры лучше, в каких — выше их кликабельность, и когда банеры достигают целевой аудитории. Я просто расскажу о клиентской оптимизации использовании рекламы на сайтах.

Как было продемонстрировано в исследованиях этого и прошлого годов, большая часть задержек при загрузке страницы у обычного пользователя приходится на долю рекламы, подключаемой, в основном, через JavaScript (cредний размер веб-страницы увеличился втрое с 2003 года и цена банерной рекламы для клиентской производительности). Далее я хочу рассмотреть основные типы использования рекламы на сайтах и предложить способы (в большинстве своем опробованные на практике) для разгона ее загрузки.

читать дальше на webo.in →
Всего голосов 29: ↑25 и ↓4 +21
Просмотры701
Комментарии 10

Кроссбраузерное использование data: URL

Клиентская оптимизация
После статей картинки в теле страницы с помощью data:URL и data URL в IE мне написал один из читателей и предложил метод использования base64-кодирования в CSS-файлах под IE (как это сделать в HTML-файлах, описано в последней статье). После этого прошло пара месяцев, прежде, чем мне довелось взяться за рассмотрение этого метода более детально. Однако, после нескольких недель исследований удалось получить весьма обнадеживающую картину.

О чем идет речь? IE (до версии 7 включительно) не поддерживает протокол data:URL, а вместе с ним base64-кодирование внешних файлов и включение их прямо в тело необходимого документа (будь то HTML или CSS/JS-файл). Однако, если рассмотреть использование протокола mhtml (который, конечно же, поддерживается только в IE), многое становится более ясным, и base64-кодирование удается использовать в полной мере.

читать дальше на webo.in →
Всего голосов 22: ↑22 и ↓0 +22
Просмотры905
Комментарии 11

Оптимизация размера файлов: уплотняем поток

Клиентская оптимизация
После ряда статей на тему минимизации размера файлов и распределения их по нескольким хостам у меня возник вопрос: какое оптимальное соотношение между числом (или размером) «встроенных» и внешних файлов? Какая часть страницы должна загружаться вместе с основным HTML-файлом, а какая — только с внешними файлами? Для решения этих и ряда других вопросов я собрал тестовое окружение в виде одной странице, для которой применены различные оптимизационные техники (заодно и посмотрел, как реально все эти техники влияют на скорость загрузки страницы).

Шаг первый: простая страница



Начал я с обычной страницы, для которой использовалось только gzip-сжатие HTML-файла. Это самое простое, что может быть сделано для оптимизации страницы (на самом деле, причиной было то, что мне не хотелось специально отключать сжатие для одного хоста, а потом его включать обратно :). Данная страница бралась за основу, с которой сравнивалось все остальное.

читать дальше на webo.in →
Всего голосов 28: ↑27 и ↓1 +26
Просмотры1.1K
Комментарии 40

CSS Sprites — зло, не используйте их!

Клиентская оптимизация
После многочисленных статей (на русском и английском) на тему использования стилей для Rollover-эффектов, уменьшения задержки при открытии страницы и нагрузки на сервер, я хочу раскритиковать использование CSS Sprites. В качестве более зрелого и мощного способа можно предложить использование data:URL и ряд дополнительных методик. На мой взгляд, область применения CSS Sprites весьма ограничена, я хочу постараться обозначить ее данной статьей и указать, когда их лучше не использовать.

Проблемы при верстке



С какими проблемами сталкивается верстальщик, когда использует спрайты? Это, в первую очередь, проблемы изменения каждой конкретной картинки в общем массиве. Мало того, что нужно открыть ресурсную картинку, найти в ней область, соответствующую данному небольшому изображению (которое меняется), и заменить ее, не потеряв палитру при всех изменениях. Также при изменении расположения картинок в ресурсном файле (например, перераспределили свободное место в связи с очередными дизайнерскими изменениями) нужно заново пересчитать все координаты и внести соответствия в CSS-файл.

читать дальше на webo.in →
Всего голосов 57: ↑45 и ↓12 +33
Просмотры4.3K
Комментарии 59

Семантика проигрывает!

Клиентская оптимизация
Логическим продолжением уже проведенных исследований CSS/DOM-производительности браузеров (часть 1, часть 2, часть 3) стало рассмотрение зависимости времени создания документа от числа тегов (узлов дерева). Раздельно анализировались случаи, когда DOM-дерево было чисто линейным (все div лежали прямо внутри body, когда оно было разветвленным (ветки по 10 вложенных div наращивались внутри body) и когда вместо ветки из div использовалась некоторая семантическая конструкция.

Время создания документа от числа узлов

читать дальше на webo.in →
Всего голосов 22: ↑14 и ↓8 +6
Просмотры594
Комментарии 11

Web Optimizator: fin

Клиентская оптимизация
Полгода работы Web Optimizator — 20000 проверенных сайтов, 2000 зарегистрированных пользователей, около 100000 посетителей, 50 статей и переводов по оптимизации, сотни статей, заметок и отзывов по всему Рунету. Проект выстрелил.

Ниже я хочу поделиться парой мыслей о том, как я продвигал ресурс в Рунете и как пытался (местами неплохо) окупить поток посетителей. Итак, поехали.

Web Optimizator statistics

Читать дальше →
Всего голосов 1: ↑1 и ↓0 +1
Просмотры537
Комментарии 35

nginx как reverse proxy

Клиентская оптимизация
Несколько читателей блога webo.in просили меня выложить конфигурацию связки nginx + Apache, на которой работает сервер. Хотя это и не относится напрямую к теме клиентской оптимизации. Однако, большинству специалистов, занимающихся клиентской оптимизацией, будет интересно узнать о настройке нескольких хостов для выдачи статики и пара других трюков, связанных с балансировкой запросов.

Также я подробно комментирую все настройки конкретно Apache, которые так или иначе относятся к самой оптимизации времени загрузки страниц.

читать дальше на webo.in →
Всего голосов 4: ↑4 и ↓0 +4
Просмотры39.2K
Комментарии 46

Анализируем загрузку веб-страницы

Клиентская оптимизация
Перевод
Ниже перевод статьи «Optimizing Page Load Time», в которой автор математически рассчитывает оптимальный размер файлов для эффективной передачи при веб-запросах, рассматривает некоторые прикладные вопросы оптимизации загрузки страницы с учетом особенностей браузеров, а также дает несколько развернутых и ценных советов. Мои комментарии далее курсивом.

Существует распространенное мнение, что быстро загружающая страница положительно влияет на впечатление пользователя (improve the user experience). В последние годы многие сайты начали использовать для этой цели технологию AJAX, чтобы уменьшить время ожидания (при загрузке данных). Вместо того, что запрашивать с сервера новую страницу полностью при каждом клике, браузер часто можно либо поменять вид самой страницы (отобразив или скрыв какие-либо блоки), либо подгрузить небольшую порцию HTML-, XML- или JavaScript-кода и внести изменения на существующую страницу. В любом случае, это значительно уменьшает время, проходящее между кликом пользователя и окончанием визуализации браузером нового содержания.

Что влияет на загрузку страницы?



Однако, для большинства сайтов, загрузка страницы затрагивает десятки внешних объектов, основное время загрузки тратится на различные HTTP-запросы картинок, JavaScript-файлов и файлов стилей. AJAX, возможно, поможет в данной ситуации, но ускорение или удаление этих HTTP-запросов может принести гораздо больше пользы, хотя на данный момент нет единого мнения (a common body of knowledge), как именно это следует делать.

читать дальше на webo.in →
Всего голосов 60: ↑57 и ↓3 +54
Просмотры1.3K
Комментарии 49

Высокопроизводительные AJAX-приложения

Клиентская оптимизация
Перевод
Примечание: ниже перевод презентации «High Performance Ajax Applications», подготовленной ведущим специалистом из Yahoo (а теперь уже из Apple) Julien Lecomte. В ней автор освещает некоторые аспекты оптимизации как JavaScript-приложений, так и веб-сайтов вообще. В целом, советов много, и почти все, действительно, по делу. Однако, встречается и откровенная реклама Yahoo :) Мои комментарии далее курсивом.

Часть 1. Разработка для высокой производительности



Планируем и проектируем для высокой производительности



  • Ориентируемся на производительность с самого первого дня
  • Тесно работаем с дизайнерами и менеджерами продукта
  • Понимаем рациональность дизайна
  • Объясняем компромиссы между дизайном и производительностью
  • Предлагаем альтернативы и показываем, что еще возможно (на уровне прототипа)
  • Пробуем силы в реализации нетривиального дизайна (нельзя сразу говорит «нет»)
  • Помогаем упростить дизайн и взаимодействие с пользователем (добиваемся компромисса)


читать дальше на webo.in →
Всего голосов 77: ↑73 и ↓4 +69
Просмотры572
Комментарии 28

Yahoo: высокопроизводительные Веб-страницы. Часть 2

Клиентская оптимизация
Перевод
Примечание: ниже перевод свежей презентации от Yahoo! «High Performance Web Pages» с новыми советами по оптимизации. Yahoo известна своими статьями на тему оптимизации клиентской части и является мировым лидером в этой области. Однако, с уходом Julien Lecomte (ведущего специалиста отдела оптимизации, автора YUI Compressor) в Apple ситуация может измениться. Посмотрим.

Мои комментарии далее курсивом. Я постарался, по возможности, расставить ссылки на упоминаемые в презентации инструменты и связанные статьи.

Этот медлительный веб



  • Мы используем Интернет для решения наших повседневных задач
  • Мы все хотим испытывать при этом комфорт
  • Мы не выносим медленные страницы (хотя есть варианты)
  • На 500 мс медленнее = 20% уменьшение трафика (Google)
  • На 100 мс медленнее = 1% уменьшение продаж (Amazon)


Разговор на сегодня



  • Как улучшить производительность веб-страниц
  • Фокус на клиентской части
  • 14 отличных советов для быстрых страниц
  • … и еще 20!


читать дальше на webo.in →
Всего голосов 44: ↑40 и ↓4 +36
Просмотры539
Комментарии 39

Картинки в теле страницы с помощью data: URL

Клиентская оптимизация
Перевод
Примечание: ниже расположен перевод статьи «Inline Images with Data URLs», в которой рассматривается вопрос о внедрении картинки на веб-страницы при помощи data:URI. Эта схема позволяет вставить код картинок прямо в (X)HTML-страницу без обращений к внешним файлам, что уменьшает общее количество HTTP-обращений к серверу. Мои комментарии далее курсивом.

Встроенные (inline) изображения используют схему data:URI для внедрения прямо в тело веб-страницы. Как было определено в RFC 2397, такие URI предназначены для вставки небольших объектов как «непосредственные» данные. Такие объекты должны рассматриваться так же, как и любые другие внешние файлы. Использование встроенных изображений позволяет сэкономить HTTP-запросы к внешних ресурсах.

Поддержка браузерами data:URL



Хотя Opera 7.2+, Firefox, Safari, Netscape и Mozilla поддерживают data:URI, Internet Explorer 5–7 совсем нет. Однако, сообщается, что Internet Explorer 8 будет поддерживать эту схему, так как проходит Acid2 тест, что позволяет использовать data:URL как реальную альтернативу для внедрения небольших декоративных изображений. Существует также несколько приемов для поддержки старых версий Internet Explorer.

читать дальше на webo.in →
Всего голосов 54: ↑50 и ↓4 +46
Просмотры3.3K
Комментарии 48

Цена банерной рекламы для клиентской производительности

Клиентская оптимизация
Перевод
Примечание: ниже располагается перевод статьи «The Cost of Banner Advertising on Web Performance», в которой рассматривается, как банерная (и не только) реклама влияет на производительность при загрузке веб-страниц. Мои комментарии далее курсивом.

Реклама является многомиллиардной веб-индустрией. Internet Advertising Bureau сообщило, что выручка от рекламы в Интернете выросла примерно на 34% за 2006 по сравнению с 2005 годом и составила в сумме около 16,8 миллиарда долларов (IAB 2007). По данным Baker годовой рост оборота рынка Интернет-рекламы составляет 28,6% в год, при этом вся рекламная индустрия показывает прирост всего в 7,7% в год (Baker 2004).

читать дальше на webo.in →
Всего голосов 11: ↑11 и ↓0 +11
Просмотры614
Комментарии 5