В Mozilla обеспокоились производительностью дополнений для Firefox
2Иллюстрация с сайта Addons.Mozilla.Org
В блоге компании Mozilla, стоящей за Firefox, подняли тему производительности дополнений к этому популярному веб-браузеру с открытым кодом.
По подсчетам специалистов Mozilla, каждое дополнение в среднем увеличивает время запуска Firefox на 10%. Конечно, многие потребляют меньше ресурсов, но есть и обратные примеры. В результате, 10 установленных дополнений в Firefox, как правило, приводят к удваиванию времени запуска веб-браузера.
В десятке «лидеров» по увеличению времени запуска Firefox такие популярные дополнения, как Firebug (время увеличивается на 74%), FlashGot (50%), Video DownloadHelper (33%) и FastestFox (33%). Еженедельно обновляемый «рейтинг» публикуется на отдельной странице.
Среди инициатив, которые запустила Mozilla для борьбы с этой проблемой:
- Автоматизированное тестирование производительности, благодаря которому и стал доступен рейтинг наиболее медлительных дополнений.
- Уведомления о медлительности работы в галерее и менеджере дополнений (замечание будет выводиться для дополнений, установка которых увеличивает время запуска браузера на 25% и более).
- Обновленная документация по улучшению производительности при разработке дополнений.
- В ближайшие месяцы появится инструментарий для тестирования производительности дополнений по запросу от разработчиков.
- Введение дополнительного согласия от пользователей при установке различных панелей и других встраиваемых в браузер без вашего согласия дополнений.
Самим пользователям Firefox рекомендуется отключить неиспользуемые дополнения.
Постоянная ссылка к новости: http://www.nixp.ru/news/11080.html. Дмитрий Шурупов по материалам blog.mozilla.com.
Веб-браузер Firefox 57.0 «Quantum» получил полностью новый (и очень быстрый!) движок 4 9
Mozilla начала тестировать онлайн-сервис для безопасной отправки файлов через Firefox Send
Свободный мобильный веб-браузер Firefox Focus стал доступен для Android
Вышел браузер Firefox 54 с многопроцессным режимом обработки веб-содержимого 1 4
Firefox 46 — новая версия веб-браузера получила интеграцию с GTK+ 3 3 2
Веб-браузер Firefox 40 получил улучшенную производительность, поддержку Windows 10 и новые возможности 4
Последние комментарии
- OlegL, 17 декабря 2023 года в 15:00 → Перекличка 21
- REDkiy, 8 июня 2023 года в 9:09 → Как «замокать» файл для юниттеста в Python? 2
- fhunter, 29 ноября 2022 года в 2:09 → Проблема с NO_PUBKEY: как получить GPG-ключ и добавить его в базу apt? 6
- Иванн, 9 апреля 2022 года в 8:31 → Ассоциация РАСПО провела первое учредительное собрание 1
- Kiri11.ADV1, 7 марта 2021 года в 12:01 → Логи catalina.out в TomCat 9 в формате JSON 1
Но это же ни разу не решение проблемы :(
Я не в курсе, как там всё внутри устроено, но для меня главная загадка — почему, обратив такое пристальное внимание на проблему, все её «решения» сводятся к блужданию вокруг да около и борьбе с последствиями, а не причинами (даже не обозначены усилия разработчиков оптимизировать что-то внутри FF/системы дополнений). Неужели вся проблема действительно преимущественно сводится к «неопрятности» только программистов, создающих дополнения?
Предполагаю, что это жесткий намек девелоперам дополнений на оптимизацию. А говорить, что Mozill’исты не работают над оптимизацией не стоит.
Это браузер, который в отличии от конкурентов, умеет отображать стили для option в select списке. Так что ребята работают по всем направлениям.
Единственный прямой конкурент этому браузеру — Google Chrome. Но его еще нужно пилять и пилять, так как Googl’исты гоняются за скоростью.
Ну как-бы очевидно, что если дополнение загружается в память и инициализируется при старте браузера, то стартовать он будет медленнее. Не думаю что тут что-то можно сделать кроме выкрутасов с фоновой загрузкой или загрузкой по требованию. Мне не очень понятно почему это такая проблема — браузер загружается один раз за сессию как правило, а на ноутах, которые не выключаются, а засыпают, так и вовсе раз в неделю. Главное чтобы серфинг как таковой не тормозился, имхо.
Не знаю как у вас, но у меня мозилла, когда работает недели две без перезапуска, начинает просто безбожно тормозить. Кроме того, с нефиг делать, я запустил boinc, и несколько раздражает, когда неиспользуемый файрфокс стабильно отжирает 1% cpu time. Мелочь, конечно, но раздражает, и поэтому теперь я убиваю ff каждый раз, когда в нём отпадает надобность. Но на его перезапусках, по-моему, я теряю больше времени.
А оптимизировать, я уверен, там есть что. mozilla втянулась в гонку за звание владельца самого производительноого движка js и dom, и даже достигли определённых, весьма ощутимых успехов на этом поприще. А аддоны, которые все целиком написаны на js продолжают тормозить.
Честно говоря не проверял по две недели. Если тормозить начинает, это утечки памяти и если они в аддонах, то это повод дать их авторам по башке.
Вообще, имхо, это мерянье пиписьками по поводу самого быстрого движка никому не надо. Лучше бы надежность повышали.
при чем здесь авторы аддонов?? Они пишут на JavaScript, если Вы не забыли, там нету ни управления памятью, ничего подобного. Надо движок сделать так чтобы не текло. Они уже это трижды как анонсировали исправления, и вроде чуток лучше стало, но пока тоже вынужден согласиться, он жутко тормозной…
Применяю его только для разработки, для серфинга только Хром.
Ам… а Google Chrome для разработки не применяете? )
Много раз пробовал… Пока не дотягивает до Firefox’a, как ни крути. Но с каждым днем приближается.
Developer Tools да.
Попробуйте Firebug Lite for Google Chrome
В этом firebug есть все кроме Net panel
Да пробовал, и лайт, и Гугловый FireBug расширение… Не удобные они, и юзабельны разве что в ИЕ, особенно старых, когда выходя другого нету :(
Там нету кучи вкосностей типа автодополнений, листаний свойств, автоподсказок, изменения значений (в т.ч. числовых и списочных) стрелками клавиатуры ну и много всяких других полезностей. На то оно и лайт…
Авторы причем. Если плагин каждый раз выделяет себе память и сконструирован через левую ногу так, что никогда ее не отдает, то это будет де-факто утечка. На языке без явного управления памятью можно тоже за милую душу написать подобную фигню :)
> Авторы причем. Если плагин каждый раз выделяет себе память
Еще раз, для тех кто в танке: В JavaScript в принципе нету выделения памяти!!! Авторы этого не делают как бы не хотели. Выделение и освобождение (сборка мусора) делаются автоматически!
СпокойнЕе, Маня, вы не на работе (С)
Отвечаю из танка: плагин в цикле каждые 10 секунд добавляет к некому массиву элемент. Память выделяется автоматически, да, но выделяется. И если сделано через одно место, то массив растет себе и жрет все больше памяти. Это де-факто утечка, хотя формально таковой не является.
Как понимаю под массивом, Вы имели ввиду ООП и создание, например, многократных копий класса а-ля:
:-D
Почему бы разработчикам расширений не пересмотреть свои взгляды на реализацию кода и оптимизацию его?
Ну тут-то конечно невозможно не согласиться. Однако это не совсем утечки конечно, хотя размер занимаемой памяти конечно увеличивается, тут согласен. Другое дело что JavaScript так спроектирован чтобы этого не было. Нет, конечно при большом желании можно использоваь и глобальный массив и с какого-то перепугу яго постоянно дополнять чем-то… Но обычно переменные создаются в функциях, передаются и обрабатываются в замыканиях и коллбеках, такми образом выходя из области видимости их память автоматически освобождается…
Скажите, Вы серезно считаете что разработчики расширений под Хром и ту же Оперу другие, все как один более квалифицированные, аккуратные и т.д. и т.п.??
Понятия не имею т.к. не использую ни хром ни оперу. Если на то пошло, то расширений я тоже не пишу и высказался чисто теоретически — как бы хорош ни был язык, все равно можно написать на нем неэффективную фигню :)
У меня используются постоянно только Adblock Plus, DownloadHelper, Download Statusbar и Noscript ( Web Developer + валидаторы от случая к случаю). Катастрофического падения скорости загрузки не замечаю. Больше беспокоит общая производительность при большом количестве открытых страниц > 40.
P.s. Firefox 3.6.16 Ubuntu 10.10 ( четвёрку не пробовал ещё, жду когда избавят дополнения от «детских болезней»).
С kernel 2.6.38 (в natty) количество страниц не сказывается на реакции. Но проявляются артефакты при flash анимации и пр. (в FF4).
На данный момент установленные Firebug 1.7.0 и Awesome Screenshot 2.1.
Запуск и открытие Google менее секунды (не холодный).
firebug установлен, проблем с долгим запуском не замечаю. Готов согласиться на 3-х кратное увеличение времени старта взамен 3-х кратного сокращения отжираемой памяти!