Заметки Сис.Админа

статьи

Как ускорить загрузку сайтов [Mozilla FireFox]

Не секрет, что скорость загрузки страниц зависит не только от "толщины" интернет канала и мощности компьютера, но и от настроек браузера.

firefox ускорение

Многие жалуются, что другие браузеры обычно быстрее в плане загрузки страниц, чем Mozilla Firefox. В этой статье речь пойдет как раз о том, как настроить Mozilla FireFox так, чтобы сайты грузились в разы шустрее.

Разгон Firefox или ускоряем загрузку сайтов

И так, давайте приступим к, так сказать, разгону нашего любимого Mozilla Firefox.
Делаем всё по порядку:

  1. Запускаем Мозилку.
  2. Набираем (именно набираем, а не копируем) в адресной строке (это там, куда мы вводим, например sonikelf.ru) about:config и, согласившись быть осторожными, попадаем на страницу настроек браузера.
  3. Находим в списке параметр network.http.pipelining (введя это название в строке "Фильтр") и выставляем (нажав на строке этого параметра два раза левой кнопкой мыши) значение true.
  4. Следующей находим параметр network.http.proxy.pipelining , которому тоже меняем значение на true.
  5. Почти точно так же поступаем с параметром network.http.pipelining.maxrequests, только ему присваиваем значение 32
  6. В качестве еще одного штриха (нажав правой кнопкой мыши и выбрав из выпадающего списка Создать - Целое) надо создать целый параметр с названием nglayout.initialpaint.delay и значением 0.
  7. Далее находим в списке параметр network.dns.disableIPv6 и присваиваем ему значение false
  8. Следом даем параметру content.notify.backoffcount (если его нет, то создаем (правая кнопка мышки - Создать - Целое)) значение 5.
  9. Тоже самое проделываем с значением ui.submenuDelay (если его нет, то создаем (правая кнопка мышки - Создать - Целое)), только ему присваиваем 0.
  10. Ну и, наконец, параметру plugin.expose_full_path (правая кнопка мышки - Создать - Логическое)) даем значение значение true
  11. Закрываем страничку настроек, перезапускаем браузер и наслаждаемся результатом.

За сим всё :) Вот так вот просто.
Давайте же разберемся, что именно мы сделали и почему сайты в Firefox стали грузиться быстрей.

Что мы сделали и как это работает

Принцип основан на том, что к каждому сайту (а точнее его серверу) при попытке на него зайти, посылается запрос. По умолчанию, издавна и по многим причинам, в настройках установлено маленькое количество этих запросов на случай, если, скажем, у Вас слабенький интернет-канал (что давно не актуально) или сервер не поддерживает большое число запросов, что неактуально еще с 1999 года, когда в протоколе HTTP (тот самый за счет которого мы можем пользоваться сайтами) версии 1.1 появилась возможность в рамках одного TCP-соединения делать множество запросов веб-серверу. Учитывая, что страницы современных сайтов обычно содержат большое количество изображений и других объектов, время установления TCP-соединения (для каждого объекта) начинает играть значительную роль.

Поэтому грех не использовать возможность по гарантированному ускорению загрузки страниц, существующему уже много лет с помощью соответствующих настроек:

  • network.http.version — 1.1, network.http.keep-alive — true
    Эти параметры установлены по умолчанию и разрешают Firefox использовать HTTP версии 1.1, включая возможность делать несколько запросов в соединении.
  • network.http.pipelining — true, network.http.proxy.pipelining — true
    Эти параметры предписывают Мозилке делать несколько запросов в соединении, не дожидаясь ответа сервера.
  • network.http.pipelining.maxrequests — 32
    Этот параметр задает максимальное количество запросов, которое может быть сделано в соединении, от 1 до 32. Указывать значение более 32 зачастую бессмысленно, т.к поддерживается далеко не всеми сайтами. Если есть проблемы с загрузкой каких-либо сайтов, то попробуйте понизить это значение до 24 или 16.
  • nglayout.initialpaint.delay — 0
    И вот этот, созданный нами, параметр уменьшает до нуля задержку перед прорисовкой (рендерингом) информации, полученной от веб-сервера, что позволяет увидеть запрошенную страницу чуть быстрее.

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

Описание оных настроек примерно таково:

  • network.dns.disableIPv6
    Отключает IPv6 DNS поиск ибо оный не используется пока в наших сетях, а значит нет смысла оставлять его активным, т.к любой запрос увеличивает общее время загрузки
  • content.notify.backoffcount - 5
    Вместо того, чтобы ждать, пока страница полностью загрузится, чтобы отобразить её пользователю в конечном виде, Firefox отрисовывает то, что было получено до текущей точки загрузки. Однако, учитывая, что частый вывод того, что уже есть значительно замедляет общее время загрузки страницы целиком, то это значение задает, так называемый, таймер. Параметр 5 наиболее оптимален между скоростью загрузки вцелом и адекватным выводом того, что уже загрузилось.
  • ui.submenuDelay - 0
    Позволяет начать загрузку страницы стразу, а не ждать пока загрузятся картинки и прочие элементы.
  • plugin.expose_full_path - true
    Задает в конфиге полные пути к плагинам (а не только их названия), что, теоретически, сказывается на скорости работы.

Как-то так. На сим всё.
Страница обновляется по мере поиска полезных, с точки зрения оптимизации загрузки сайтов, настроек.

Послесловие

Так же есть плагин FasterFox, который по идее занимается оптимизацией скорости загрузки страниц в Firefox, но я, используя его, не ощутил особого прироста производительности, а на некоторых страницах так и вовсе получил ряд проблем из-за настроек, изменяемых этим плагином. В общем, пользоваться им или нет, - дело Ваше. Во всяком случае настроек Выше хватает и так.

Вот такие дела.

Как и всегда, если есть какие-то вопросы, то спрашивайте, - буду рад ответить в комментариях.
Равно как и буду рад Вашим дополнениям, благодарностям и всему такому прочему.

PS: Так же, рекомендую почитать статью по оптимизации потребления оперативной памяти Mozilla FireFox. Оное не только поможет сэкономить ценные мегабайты, но и будет полезно в целях ускорения загрузки и работы браузера вообще.

Оценить —

  1. 5
  2. 4
  3. 3
  4. 2
  5. 1
(5 голосов, в среднем: 5 из 5)

Подписаться —

RSS Email Facebook Twitter G+ YouTube
Темы:  ,
  1. Мишка

    Андрей - спасибо, уже полгода пользуюсь тока FireFoxom, но даж не предпологал что его можно чуток раскрутить, попробовал все получилось. Пасиб Большое за полезную инфу!!!

  2. Sonik

    Пожалуйста :) Приходите еще ;)

    • Aka

      Здравствуйте! Подскажите пожалуйста, у меня есть мозилла. Я там никак не могу разобраться! Там картинки загружаются вручную, ну т.е. я сам их отдельно, те которые хочу загружаю, а те, остальные картинки не загружаются, если на них нажать загрузить картинку. Хотя в настройках у меня галочка стоит "Автоматически загружать изображения"! Помогите пожалуйста, в чем дело?

      • Anonim

        ImgLikeOpera стоит?

  3. Zer0CooL

    Да... мозилка ваще рулит там настроек еще =) играться и играться =)
    главное знать что делаешь ато сломать тоже просто =)

  4. Zer0CooL

    Кстати способ реально помогает ? или при 20ти мегабитах незаметить ?! :-D
    P.S еще вспомнил что свою Portable версию тоже через этот конфиг руссифицировал ;-)

    • MEAT

      блин я случайный параметр создал

  5. Sonik

    На широких каналах по идее особенно заметно

  6. Zer0CooL

    лан потестим =)
    пока вроде с моим забитым торрентами широким каналом твой блог раза в 3 быстрее открылся !
    Решпект :-D

  7. Sonik

    Еще бы :-D

  8. Антон Бородин

    Как говорится.. Не дать не взять, зачётная статья!

  9. Виктор Полежаефф

    Вы меня спасли,я этой проблемой 2 месяца мучался,не грузились и все,а сейчас,просто кайф какой-то.Спасибо:))

  10. Всего лишь кошка...

    Спасибо соник... )))

  11. gyunter

    Спасибо, посмотрим на результат :)

  12. Sonik

    Всем пожалуйста :) Рад, что пригодилось :)

  13. haha

    СПАСИБО!!! БОЛЬШОЕ ПРИБОЛЬШОЕ!!! ОЧ ЗАМЕТЕН РЕЗУЛЬТАТ!!!!!!!

  14. DOK

    Помоги с разгоном мозилки!
    Нахожу network.http.pipelining нажимаю выходит следующая страница там true, опускает на стоку ниже с описанием там жму на edit/ и так везде это правильно??(как у тебя расписано не получется ). и не могу создать nglayout.initialpaint.delay!
    пожалуйста помоги!

    • Sonikelf

      Что конкретно не выходит? 0_O
      Читай внимательней.

  15. DOK

    Нахожу network.http.pipelining и остальные 2 параметра!
    Нажимаю 2 раза network.http.pipelining выходит следующая страница там true,нажимаю true, опускает на строку ниже с описанием там жму на edit Вот это правильно я сделал?И еща не могу понять как выполнить вот эту операцию - (Создать - Целое) nglayout.initialpaint.delay!
    заранее благодарен!

  16. Sonik

    Находишь network.http.pipelining тыкаешь два раза по строке с ним, у него меняется значение на true.
    Находишь network.http.proxy.pipelining, тыкаешь два раза по строке с ним, у него меняется значение на true.
    Находишь network.http.pipelining.maxrequests, тыкаешь два раза по строке с ним, появляется окошко, где ставишь 8-ку.
    Копируешь в буфер nglayout.initialpaint.delay, потом жмешь на любой строке правой кнопкой мыши и выбираешь из выпадающего списка "Создать" - "Целое". Вставляешь скопированное, жмешь ок, ставишь значение 0, жмешь ок. Всё.

    • yurii35753

      в статье 32, а в коменте 8

      • Sonikelf

        Коммент от 2008-года. Статья редактировалась и дополнялась с того времени неоднократно (последний раз 16.03.2011).

  17. DOK

    Копируешь в буфер nglayout.initialpaint.delay-,не пойму эту строчку хоть убей !как скопирывать и откуда взять это???

    • Softwayer

      Тяжелый случай... :(

    • emisha65

      Респект автору.........сколько всего я сделал..........спасибо большое.........!

  18. Sonik

    Выдели мышкой прямо с блога с этого комментария надпись - nglayout.initialpaint.delay , нажми правую кнопку мышки и выбари копировать. Потом открываешь abоut:config, где ты все делал, жмешь на любой строке правой кнопкой мыши и выбираешь из выпадающего списка “Создать” - “Целое”. Потом жмешь вставть, затем ок, в следущем окне вписываегт значение 0 и жмешь ок. Всё.

  19. DOK

    Ааааа! я щас пристрелю себя вместе с моим железом.
    Опять нету ничего !
    копирую в буфер нажимаю на любой строчке в abоut:config, в появившемся окне нету ничего что похоже на “Создать” - “Целое” там всякие яху и тд! что я тока не делал!вот зато параметр nglayout.initialpaint.delay есть но там 0 нет!я уже все перепробывал! помоги а нето я щас за топор возьмусь и последний комп в порошок сотру!

  20. Sonikelf

    На любой строчке abоut:config надо НАЖАТЬ ПРАВОЙ КНОПКОЙ МЫШКИ и выбрать в появившемся списке “Создать” - “Целое”. Как объяснять еще не знаю. Сделаю скриншотов тебе завтра, если не получается.