В то время как релиз Firefox 39 задерживается на несколько дней из-за выявления непредвиденных проблем со стабильностью, в ночные сборки Firefox, на базе которых будет сформирован выпуск Firefox 41, <a href="https://blog.mozilla.org/nnethercote/2015/07/01/firefox-41-w...добавилены</a> патчи, решающие проблему (http://www.opennet.dev/opennews/art.shtml?num=39791) с излишним потреблением памяти при использовании AdBlock Plus.
Суть проблемы в том, что при регистрации одной таблицы стилей, используемой для скрытия элементов, Firefox создаёт новые копии этой таблицы стилей для каждой страницы вместо совместного использования для всех страниц. Таким образом, AdBlock Plus требует около 60Мб ОЗУ для хранения базы правил блокировки, плюс около 4Мб на каждую страницу и iframe. На страницах с больших числом iframe, которые части применяются для вставки рекламных блоков, потребление памяти возрастает кардинально. Например, открытие сайта TechCrunch с AdBlock Plus приводит к потреблению 417Мб ОЗУ, а без дополнения браузер съедает всего 194Мб.Решению указанной проблемы будет способствовать возможность совместного использования связанных с CSS данных. После принятия патча потребление памяти при открытии тестовой страницы (http://vimcolorschemetest.googlecode.com/svn/html/index-c.html), которая содержит 429 блоков iframe, снизилось с 1960 Мб до 450 Мб, т.е. почти на полтора гигабайта. Тестирование на других сайтах также подтвердило общее снижение потребление памяти в на 3.6 Мб на каждый открытый документ. В среднем, при использовании AdBlock Plus экономия в тестовой конфигурации составила 90 Мб, при этом потребление памяти из-за применения патчей без AdBlock Plus снизилось на 40 Мб.
URL: https://blog.mozilla.org/nnethercote/2015/07/01/firefox-41-w.../
Новость: http://www.opennet.dev/opennews/art.shtml?num=42554
Патч на аддон?Патч над патчем нагибают!
> Патч на аддон?На Firefox. Читай новость.
если честно, ожидал от этого поделия ... не, я уверен был
"Таким образом, AdBlock Plus требует около 60Мб ОЗУ для хранения базы правил блокировки, плюс около 4 Мб на каждую страницу и iframe."
теперь не так уверен , хотя вроде как разработка такого расширения изначально предполагала ... (умолчу тут) ... лейку
ткните пальцем в того кто не сказал "а как-же ифреймы" при дизайне ЭТОЙ ПРЛОЖУХИ
и мы дружно отвернемся потому что всем пофик и дальше начнем юзать всякое совместно с адблоком но то такое то наше дело и всякая статистика проходит мимо нас ..... <ТУТПАРОВОЗ>
Это был поток сознания из параллельной вселенной.
Посетителей просьба не беспокоиться - клиент не буйный, просто суспензия ему досталась просроченная.
Напиши лучше :)
Плохой пост, очень плохой пост.
Я думал гораздо лучше будет... Сколько раз тебя читал - всегда было хорошо.
Зашевелились после того, как начался массовый переход на uBlock
Как раз Мозилле до фени, AdBlock или uBlock используют люди.
Там разброд и шатания, разработчики неадекватны. О каком из uBlock'ов вы пишите ;) ?
Чушь. Какой разброд и шатания? Кто неадекватен?Всё там в порядке. Есть uBlock0 от оригинального автора - сосредоточен больше на новых и продвинутых фичах. Есть uBlock от нового маинтайнера - сосредоточен больше на красивом гуе для более "рядового" пользователя. Базовая фнукциональность одинаково хороша у обоих. Оба вполне себе развиваются, просто немного в разные стороны, но если вы не в теме - любой из них отлично подойдёт.
> Там разброд и шатания, разработчики неадекватны.По-моему неадекватны тут ВЫ. Впаривать аддон с белым списком "типа, ненавязчивой" рекламы, трескающий в разы больше памяти с какими-то идиoтскими аргументами вида "мне не нравится их физиономия" - это конечно верх адеквата.
> О каком из uBlock'ов вы пишите ;) ?
Да о любом. Они оба ресурсов меньше адблокплюса лопают. С адблокплюсом сайт грузится медленнее чем без блокировщика вообще (!!!! - блокировщик тормозит хуже рекламы). А с uBlock - в два раза быстрее чем без блокировщика. Что логично, хорошо и правильно.
А реально развивается uBlock O(riginal). Который Gorhill пилит.
>>С адблокплюсом сайт грузится медленнее чем без блокировщика вообщеВот это печально, потому что одна из причин, по которым я начал им пользоваться когда-то - сайты без рекламы начинали летать.
>>>С адблокплюсом сайт грузится медленнее чем без блокировщика вообще
> Вот это печально, потому что одна из причин, по которым я начал
> им пользоваться когда-то - сайты без рекламы начинали летать.И я вернулся недавно. Ublock Неудобен в firefox в плане добавления правил. Плюс нельзя список элементов загруженных и заблокированных открыть, как с Adblock Element Hiding Helper.
> По-моему неадекватны тут ВЫ. Впаривать аддон с белым списком "типа, ненавязчивой" рекламыТак это же неважно, главное что черный список блокируется, а то что вся эта реклама теперь проходит через белый список - ну, бывает и такое, что уж теперь...
от конкуренции потребители выигрывают, жаль в нашем государстве это не понимали и не понимают, одни монополии кругом
> не понимают, одни монополии кругомНу так всем хочется рулить единолично. Вот еще делиться с кем-то. У руля посидеть - пожизненно. Делиться ни в коем разе. Властью делиться - ну что вы, лучше команду холуев набрать. И все заводы-газеты-пароходы прибрать к рукам. Заводы, правда, без конкуренции работают спустя рукава (а зачем работать лучше, если и так купят?), газеты пишут исключительно дифирамбы (а то разгонят нафиг, так что некому сказать об истинном положении вещей), а пароходы - древние и ржавые. А нафуя их менять? И так будут плавать. Ну а урок автотаза и прочих - не в прок, увы.
Свидетели навальнага такие забавные. Любой факт из произвольно взятой области привяжут сопелькой к своей генеральной линии, затем любовно обсосут и вынесут неутешительный вердикт.
> Свидетели навальнага такие забавные. Любой факт из произвольно взятой области привяжут
> сопелькой к своей генеральной линии, затем любовно обсосут и вынесут неутешительный вердикт.Это скорее, ура-патриоты не видят грабли вплоть до тех пор пока они очередной раз в лоб со всего размаха не засветят. Я конечно понимаю что у глупых людей не модно учиться на чужих ошибках, но хоть на своих то можно? А тут получился вообще атас: выдернули все хучшее из СССР и из капитализма. Зашибись гибридная моделька получилась.
А вы бы не писали про патриотов в интернетах, а реально положуху исправляли в своем районе. И отписывались о результатах. Это полезнее.
У них другая задача - писать в интернетах. Чтобы ты помог со сменой власти. Ты нужен Комитету 300. Важен каждый, имеющий активную позицию.
> А вы бы не писали про патриотов в интернетах, а реально положуху исправляли в своем районе. И отписывались о результатах. Это полезнее.Вы бы тоже, кстати...
> Ну а урок автотаза и прочих - не в прок, увы.Что вы? Вы не в теме, сейчас уже модно говорить о дефолте в Греции, где своей промышленности почти не осталось, большая часть которых закрылась по указке из Брюсселя.
Должна же быть четкая специализации по плану глобализации.
Греки только туризм, Россия только бензоколонка, Германия развитая автопромышленность, США продажа воздуха и демократии, Индия разработка ПО, Китай ширпотреб.
> в Греции, где своей промышленности почти не осталось, большая часть которых
> закрылась по указке из Брюсселя.А мне пофиг на грецию. Как по мне - лучше бы закрылся автотаз и прочие дыры в бюджете, если они нормально работать не хотят. Ну то-есть в нормальном варианте у производства есть 2 варианта: оно или таки выходит на прибыль за разумное время, или расформируется КЕМ. Как невостребованное и бесполезное (неготовность ALL платить достаточно для того чтобы производство работало - надежный сигнал к тому что эта активность не требуется). Есть некие исключения, но они только подтверждают правило. А когда подобные недо-производства висят гирей на ноге всех остальных - это только по чем зря дополнительно топит экономику. Я конечно понимаю что это истинно по нашему: сидя с дырой в бюджете радоваться что кому-то на этой планете все-таки еще хуже. Но я не думаю что вы далеко уедете с такими принципами.
> Греки только туризм, Россия только бензоколонка, Германия развитая автопромышленность,
> США продажа воздуха и демократии, Индия разработка ПО, Китай ширпотреб.Странно, не вижу что-то такого уж ПО сделанного в индии. А роль бензоколонки Россия вроде бы сама выбрала, отказавшись инвестировать во все кроме нефтяной трубы и относясь к хайтечу как к г-ну и считая специалистов чуть ли не "потенциальными предателями", за то что у них свой мозг есть и они строем ходить не хотят. А то что структуры с строевой подготовкой какой-то особой экономической эффективностью не отличаются - об этом задумываются лишь когда в бюджете дырка от бублика. И то - выводов толком не делают.
>лучше бы закрылся автотаз и прочие дыры в бюджете
>отказавшись инвестировать во все кроме нефтяной трубыЭто называется плюрализм мнений в отдельно взятой голове. Очень распространенное явление у людей с отсутствующим критическим мышлением.
>за то что у них свой мозг есть и они строем ходить не хотят
Ты ведь себя скромно причисляешь к тем, у кого есть мозг? Разочарую, судя по вышесказанному, ты просто очередной тупой ретранслятор, который повторяет чужие идеи, услышанные по телевизору или прочитанные в бложиках, причем без всякой попытки понимания или хотя бы сравнения этих идей между собой, зато в твердой уверенности, что повторение навязанных идей является признаком ума.
Так и есть ))
Это в смысле есть мозг, или тупoй ретранслятор?
я просто любопытный
> Как по мне - лучше бы закрылся автотаз и прочие дыры в бюджете, если они нормально работать не хотят.И это правильно, зачем конкурировать со всякими опелями и дженерал моторсами, которые демпинговыми ценами делают хорошо каждому россиянину лично. И нахрена нам собственное производство... Они же не хотят работать нормально, а нормально - это делать лучше чем феррари и ламборджини, но дешевле, иначе требовательные аналитеки с опеннета не оценят.
> Странно, не вижу что-то такого уж ПО сделанного в индии.Windows жеж. Если вы все еще думаете, что windows пишут чистокровные американцы (даже не знаю, что это, индейцы что ли?), то мы идем к вам...
> Должна же быть четкая специализации по плану глобализации.
> Греки только туризм, Россия только бензоколонка, Германия развитая автопромышленность, США продажа воздуха и демократии, Индия разработка ПО, Китай ширпотреб.Чисто из любопытства, а у шпротов^W прибалтов што? Или их вообще вычеркиваем из новой красивой жизни? (хотя, конечно, они сами себя вычеркнули, но интересно мнение)
> от конкуренции потребители выигрывают, жаль в нашем государстве это не понимали и не понимают, одни монополии кругомВот и я всегда говорил, а мне все НАСА, НАСА. А теперь в нашем государстве российские ракетные двигатели покупают. Конкуренция - великая вещь, даже у Украины покупали что-то, правда не полетело, зато конкуренция... ведь настолько же лучше, чем госмонополия. Каждый ракеты делает. Ну а то, что не летают нихрена, так это невидимая рука рынка исправит, а как же иначе...
Давно перешёл на uBlock и он больше понравился.
для uBlock поидее тоже этот патч будет полезен?
> uBlock doesn't use the same technique of adding a massive style sheet, IIRC, so it won't be affected by this bug.
теперь можно использовать )
"по идее", позорище
хорошая попытка, но.... ПОЗДНО!
[s]джина[/s] uBlock обратно в бутылку не загонишь!
uBlock убог как деревянный пистолет - никаких полезных фич окромя самой блокировки.
>убог как деревянный пистолетПистолет должен быть от Гучи, красный и пахнуть приятно?
Угу, любой нормальный, современный, молодежный блокировщик должен по совместительству уметь и заинициализировать систему при старте -- иначе это УГ!
А что если системД это всего лишь блокировщик рекламы!??
> А что если системД это всего лишь блокировщик рекламы!??Хреновый блокировщик, значит.
Да ладно, блокирует наглухо.Плохая шутка, знаю, но я сам системдшник, мне простительно...
Это типа как над своей женой можно посмеиваться, но если кто-то поддакнет со стороны, то ему сразу в табло.
> Угу, любой нормальный, современный, молодежный блокировщик должен по совместительству уметь ии предотвратить зачатие
И диски писать
Перечисли список фич адблока.
> uBlock убог как деревянный пистолет - никаких полезных фич окромя самой блокировки.Ну так у пистолета одна функция - стрелять. Желательно хорошо - чтобы метко и подальще. А у блокировщика одна функция - рекламу давить. И довольно странно если тебе при наличии пистолета настучали по черепу сильнее чем без него, дав по черепушке твоим же пистолетом и прострелив тебе из него пятку - лучше бы у тебя его не было совсем, целее был бы. Не менее странно когда сайт при загрузке его с адблокером - грузится в 2 раза дольше чем без адблокера. А адблокплюс таки сильно тормозит. И чтобы это ощутить - надо его разок вырубить. А еще лучше - с uBlock побраузить и ощутить разницу. Половина сайтов грузится быстрее просто в разы.
> Не менее странно когда сайт при загрузке его с адблокером - грузится в 2 раза дольше чем без адблокераЭто решается быстрым инетом. Уж насколько я раздражительный, но если сайт грузится 0.5 секунд вместо 0.25, на это сложно разозлиться, даже если заметишь...
Вам шашечки, или ехать?
Соглашусь лишь в том плане, что нет возможности делать, как в блокере для старой Оперы: там был определённый режим, когда можно было отобразить все заблокированные элементы на странице (они в этом случае отображались красным) и клацнув на любой из выделенных, можно было отменить блокировку только для него. Т. е. другими словами, более гибкая система выбора что блокировать, а что нет. Хотелось бы такое в ublock очень и очень. А для тех, кто спросит: "зачем?", отвечаю: на некоторых сайтах втюхивают так называемый antiadblock, который при обнаружении блокировки всякой чепухи урезает функционал сайта, например не отображает нужной кнопки для реги или капчу прячет и т. п.
> на некоторых сайтах втюхивают так называемый antiadblock, который при обнаружении блокировки всякой чепухи урезает функционал сайта, например не отображает нужной кнопки для реги или капчу прячет и т. п.И это как бы намекает на нужность такого сайта. Просто не нужно туда заходить... Вообще.
И эволюция сама все исправит.
> После принятия патча потребление памяти при открытии тестовой страницы, которая содержит 429 блоков iframe"При полном переходе двигательного парка страны на двигатели моей конструкции экономия за сто лет составит 842 триллиона рублей" (c)
Лучше бы оптимизировали потребление памяти БЕЗ этого дополнения. А то гром не грянет - мужик не перекрестится.
>Лучше бы оптимизировали потребление памяти БЕЗ этого дополнения.По идее должны оптимизировать оба направления ;)
Оптимизируют только то что хотят видеть.
Самые насущие проблемы потребления игнорируют в лоб
Говоря "насущие", вы, вероятно, имели в виду "насущные"?
Отнеситесь к разработчикам со снисхозждением.Мы, разработчики, покупаем себе как правило топовое железо, по крайней мере я, так что на запросы оптимизировать что-то для дешевых конфигураций мы реагируем предсказуемо, это бесит.
У нас хватает памяти, процессоры наши быстры и веселы, GPU наши вообще за пределами воображения... Зачем оптимизировать, когда и так все работает. И энергопотребление - да кого оно вообще волнует, когда моя рабочая машина запросто ест киловатт. Ну, конечно, не ест в нормальных условиях, но все равно нас рать. Хоть бы и ела, нас рать. Подумаешь, не киловатт, а всего то 750 ватт. Это копейки в моем счете. Вот как только поймешь этот менталитет, тогда можно дальше разговаривать.Вот с этой точки зрения прикинь, что мы будем оптимизировать? Я буду только то, что мешает лично мне. Вот такой я засранец. И все разработчики примерно такие же, они пишут код для себя, а если он по какому-то счастливому совпадению полезен для других - то вам повезло, что вам дали им попользоваться. Хотя, не у всех такой менталитет.
>>Лучше бы оптимизировали потребление памяти БЕЗ этого дополнения.
> По идее должны оптимизировать оба направления ;)Шариков пожал плечами.
—Да не согласен я.
—С кем? С Энгельсом или с Каутским?
—С обоими, — ответил Шариков.
>>>Лучше бы оптимизировали потребление памяти БЕЗ этого дополнения.
>> По идее должны оптимизировать оба направления ;)
> Шариков пожал плечами.
> —Да не согласен я.
> —С кем? С Энгельсом или с Каутским?
> —С обоими, — ответил Шариков.— Да не согласен я.
— С кем? С Энгельсом или с Каутским?
— С обоими, — ответил Шариков.
>> Лучше бы оптимизировали потребление памяти БЕЗ этого дополнения.Прочите хотя бы последние 9 слов в новости.
> потребление памяти без AdBlock Plus снизилось на 40 МбЭто при абсолютном значении потребления в районе пары гигабайт? Смешно.
> Это при абсолютном значении потребления в районе пары гигабайт? Смешно.Смешно, это когда люди оценивают приложения по потреблению памяти. Типа, если не потребляет, то сэкономил, и это хорошо...
Если бы я вдруг зачем-то писал для себя браузер, я бы постарался, чтобы он все 16-32-64 гигабайта на моей машине использовал. Не просто так, конечно, а для дела, если нужно. Она (память) на то и куплена, чтобы ее использовать.
Не я конечно понимаю, что сейчас модно "работать" в браузере, но для меня браузер это приложение поиска информации. Применяю я полученную информацию в других программах (3d/2d графика, звук, программирование) и они как раз таки являются рабочими и им действительно нужна память. Любая программа должна потреблять необходимый минимум, а не всю память которая доступна. Ведь не под досом работаем, а в многозадачных ос.
> Применяю я полученную информацию в других программах (3d/2d графика, звук, программирование) и они как раз таки являются рабочими и им действительно нужна память.Так это ж элементарно, нашел что-то в браузере, почитал, просветился, потом закрыл его за ненадобностью, и работай дальше в других программах, память по закрытию освободится. Хотя я в курсе, бывают запущенные случаи когда у людей браузер вечно болтается как нечто в проруби, и еще меряются сотнями открытых вкладок, как будто они реально каждую секунду нужны. В общем, каждому своё...
> Так это ж элементарно, нашел что-то в браузере, почитал, просветился, потом закрыл
> его за ненадобностью, и работай дальше в других программах, память по
> закрытию освободится.Браузер нужен параллельно с остальными программами - мне каждый раз все закрывать и открывать браузер, если мне понадобится 3d модель, текстура, посмотреть доку на api или вопрос stackoverflow? А если у меня рендеринг идет по 8-24 часа, мне браузер вообще не открывать, а то съест всю память и рендеринг прибьет?
> без дополнения браузер съедает всего 194Мбвсего? мне кажется, что для отрисовки квадратика на экране 194 мб это не всего, это охренеть, как много...
Он сам по себе примерно столько жрёт. То есть это не столько отрисовка квадратика, сколько инициализация движков и интерфейса. Будет один квадратик или сотня - не слишком потребелние изменится. Да, ещё "сто квадратиков в одной вкладке" и "сто вкладок с одним квадратиком" путать не стоит, когда для каждой есть своё DOM-дерево, свой JS-контекст и так далее.
Я тоже считаю, что это слишком большое потребление. Страница - это дерево элементов, отрисовка на всех одна - текст/шрифты, бэкграунд, рамка; т.е. код общий, данных не особо много. Жабоскрипт - вообще "сбоку бантик" - это движок (очевидно, легко расшариваемый всеми вкладками) + локальные данные и модификация DOM. На что тут тратить память?? Разве что на бестолковых джуниоров, не способных правильно проектировать архитектуру.
Вот оно как!Ну и где же твой легковестный браузер, коли оно так всё легко?
Или только языком трепать на опеннете? Было бы всё так, как ты, джуниор, тут нам рассказываешь - от отличных браузеров отбою небыло бы.
> Вот оно как!
> Ну и где же твой легковестный браузер, коли оно так всё легко?
> Или только языком трепать на опеннете? Было бы всё так, как ты,
> джуниор, тут нам рассказываешь - от отличных браузеров отбою небыло бы.
У тебя есть шанс показать всем как надо правильно! Дерзай!PS: Безнадёга. Нуте больше в IT таких людей, все тут знают что форумные бойцы типа Kodir-а даже на чемпионате лузеров занимают второе место :-\ Унылота ...
> Я тоже считаю, что это слишком большое потребление. Страница - это дерево элементов, отрисовка на всех одна - текст/шрифты, бэкграунд, рамка; т.е. код общий, данных не особо много. Жабоскрипт - вообще "сбоку бантик" - это движок (очевидно, легко расшариваемый всеми вкладками) + локальные данные и модификация DOM. На что тут тратить память?? Разве что на бестолковых джуниоров, не способных правильно проектировать архитектуру.Наконец-то появился человек, не джуниор какой-то, а способный правильно спроектировать архитектуру. Вот Вас-то нам и не хватало... А то все эти разработчики хeрней какой-то занимаются, вот с вами дело сразу пойдет на лад, я практически уверен.
> всего? мне кажется, что для отрисовки квадратика на экране 194 мб это
> не всего, это охренеть, как много...Ну так квадратик рисует себя через XUL. Кусок скриптятины. Странно что бидонокидиз чем-то не доволен - у тебя все "программы" такие же.
Лучше бы снизили энергопотребление в целом. Жрёт в 10 раз больше хрома на ноутбуках.
Пздж
А на стационарках?
А на стационарниках то и не заметишь. А на ноуте всё чётко видно.
Мне вот из-за этого приходится safari пользоваться, ибо по потреблению батареи у остальных браузеров значительно хуже дела :(
> А на стационарках?А на стационарках в 20.
1. Поздно - uBlock Origin.
2. Все равно молодцы.
3. Хотелось бы блокировщик ближе к хромовскому AB, там очень легко и наглядно выбираются области страницы для блокировки.
Сообщество пользователей фаерфокса способно делать только блокираторы баннеров. Халявщики. Колхоз навоз.
Так не играйте с нами в нашей песочнице, чо там тут нак медом то намазано ?
Программа не виновата, что ее используют халявщики и малолетки.
Так программа никого и не заставляет ее использовать. До скайнета слава богу пока не дожили.
> Так программа никого и не заставляет ее использовать. До скайнета слава богу
> пока не дожили.Всем бы писателям кода сначала давать прочитать статью Никлауса Вирта "Долой жирные программы"
>> Так программа никого и не заставляет ее использовать. До скайнета слава богу
>> пока не дожили.
>Всем бы писателям кода сначала давать прочитать статью Никлауса Вирта "Долой жирные программы"А вас бы заставить использовать исключительно лишь ПО, разработанное гениальным Никлаусом Виртом, чтобы не иметь дела с "жирными программами" от прочих разработчиков. Ведь наверняка гениальный Вирт разработал и ядро линукса и ОС и браузеры, он же не просто тупо проффесор-теоретик, который нихрена не понимает в реальной разработке софта в реальные сроки и с реальными затратами усилий.
> Программа не виновата, что ее используют халявщики и малолетки.Другие файрфоксом и не будут пользоваться - там сейчас начинает процвитать кидалово и разводилово. Ну так, если на ченжлоги посмотреть. Там вон даже настройку позволяющую открывать свою страницу в новой вкладке удаляют. А то как же это - вы сможете не смотреть рекламу от мозиллы корп?!
Реклама отключается другой настройкой, которую никто не выпиливает. Зачем распространять совершенно очевидную ложь?
> Реклама отключается другой настройкой, которую никто не выпиливает.А версии через три они как обычно все вынесут.
> Зачем распространять совершенно очевидную ложь?
Не вижу где я соврал. Вся политика мозиллы (подписывание расширений, при том только мозиллой) и вот такое - нацелено на ровно одну вещь: единолично снимать сливки с userbase и ни с кем не делиться.
Единственная проблема: это означает экосистему а-ля эппл. Ну а те кто готов пожервовать свободой ради безопасности - не заслуживают ни свободы, ни безопасности. Ну и зачем мне "типа, безопасность" от махровых вендорлокеров, которые счтиают что монополия на подпись расширений должна быть только у них?
> А версии через три они как обычно все вынесут.А в России настанет 37й год, экономика в клочья, армия вдребезги, и вообще мы все умрем.
Вот когда вас вынесут, тогда и приходите...Откуда вас столько нострадамусов берется. Вынесут, значит люди выберут другой браузер...
> Не вижу где я соврал. Вся политика мозиллы (подписывание расширений, при том только мозиллой) и вот такое - нацелено на ровно одну вещь: единолично снимать сливки с userbase и ни с кем не делиться.
Есть очень простой и эффективный метод борьбы с этим - не использовать.
Или баттхерт все равно пробирает из-за того, что кто-то другой использует? Тогда тут психоаналитик нужен (это я так мягко пытаюсь не сказать "психиатр").
Совершенно фантастические числа. 417Мб, 192Мб... 437 256 192 байт. Просто охренеть. Чтобы отрисовать страничку. Немного теряю веру в человечество, когда смотрю на расход памяти нынешних приложений.
Хотелось бы взять и показать всем как надо писать браузеры, но не могу. Приходиться жрать, что дают.
Потому что не "чтобы отрисовать страничку". А "чтобы запустить виртуальную машину, которой иная операционка обзавидуется".Если б оно просто страницы рисовало (и страницы были соответствующими)- лично я был бы рад, но нефиг путать "хочу рисовалку странички" и "почему вот этот монструозный комбайн, разве что кофе варить пока не умеющий, столько памяти занял".
Не будет он кофе варить, к сожалению:
https://bugzilla.mozilla.org/show_bug.cgi?id=46647
мы у него кофе и не просили. мы у него СТРАНИЧКУ просили
монструозный комбайн - никому не упёрся
С одной стороны, я согласен с вами, и меня тоже печалит такое состояние дел. С другой же, любое ПО остаётся "легковесным" и "быстрым" (добавить остальные buzzword'ы по вкусу) ровно до тех пор, пока у него урезанный по сравнению с аналогами функционал. Как правило, пользуясь таким ПО, постоянно натыкаешься на ограничения и думаешь: "Вот реализовали бы функцию X, и тогда я бы пользовался". Поэтому все эти "легковесные" приложения, библиотеки и фреймворки занимают узкую нишу (т.е. у них мало пользователей), а когда начинают браться за feature requests, выясняется, что понятия "простота/легковесность" и "функциональность" в рамках конкретного ПО конфликтуют.На примере браузеров: возьмите любой "легковесный" браузер и увидите, что он такой во многом из-за того, что там кроме WebKit почти ничего нет - адресная строка, пара кнопок, меню из 2 пунктов с 3 подпунктами и один экран настроек, в котором можно настроить только самую банальщину. А если он не на WebKit или другом приличном движке, а на самописном, то сложно будет без кровавых слёз взглянуть на результаты рендеринга большинства сайтов, треть из которых в нём вообще не заработает или будет работать с косяками.
Ещё пример: компиляторы. Некоторые разработчики (намекаю на Вирта подобных теоретиков) очень гордятся тем, что их компилятор языка X (обычно придуманного ими же) содержит всего N тысяч строк кода, где N < 10. А когда начинаешь писать на X что-то сложнее и полезнее HelloWorld, выясняется, что код, сгенерённый этим чудо-компилятором - говно и тормозня, а сам язык X слишком прост и не позволяет кратко описывать абстракции уровнем чуть выше коллекций и алгоритмы сложнее решета Эратосфена.
От этого неплохо лечит модульность и делегирование всех хоть сколько-нибудь продвинутых внешнему софту - от плагинов/расширений до DE.В результате можно получить сложную мощную среду, построеннную из рпостых кирпичиков. Другое дело, что при этом конфигурация становится отдельным артефактом, который отдельно развивается. Но в целом - вполне вменяемый вариант.
Минус только один - чтобы подобные вещи работали нужна очень хорошо продуманная архитектура или простой data flow. А браузер, от которого ожидается поддрежка нынешней горы стандартов, простой data flow организовать точно не позволит.
Насчёт компиляторов - согласен на 101%.
А потом терять 50% (и это ещё если сильно повезёт) процессорного времени на общение между модулями. Без отдельных процессов? А как же безопасность? К тому же необходима платформа с минимальным достаточным набором функций и что предложите считать таковым?
большинство сайтов, которые "не заработают", ничего полезного в себе не содержат.
тот же самый текст, только с голимыми всплывающими окошками, и прочим хламом, большинство из которого нормально работало и на браузерах 3-5-летней давности (т.е., была поддержка этого недоhtml5ajaxjqueryjavascript), но, так как стандарты постоянно меняются (зачем?), то всё постоянно "перестаёт работать".
легковесные и быстрые сайты - уже БЫЛИ, при ТОМ ЖЕ, надо заметить, функционале.
делают тормозной сайт с недовсплывающими окошками - делают тормозной движок браузера, а потом - "чтобы сделать легковесный браузер, надо выкинуть то, без чего тормозные сайты не будут отображаться".
ну и правильно. пра-виль-но.
> Совершенно фантастические числа. 417Мб, 192Мб... 437 256 192 байт. Просто охренеть. Чтобы отрисовать страничку. Немного теряю веру в человечество, когда смотрю на расход памяти нынешних приложений.Так вам дается идеальный шанс сделать браузер получше и прославиться, не то что какие-то там теоретики, которые сами не знают о чем говорят. Ведь это же так просто - потреблять меньше памяти. Если попробуете, то, вероятно, поймете, что ваше "чтобы отрисовать страничку" включает еще и туеву хучу других вещей. Просто вообще хоть что-либо поймете.
И вот когда после этого снова обретете веру в человечество, то, вероятно, перестанете писать глупые комментарии на опеннете.
>Суть проблемы в том, что при регистрации одной таблицы стилей, используемой для скрытия элементов, Firefox создаёт новые копии этой таблицы стилей для каждой страницы вместо совместного использования всеми страницами.прикольно, молодцы :))
И вброс про адбло это зря, чтоб осадить спамеров-рекламеров и гига апиративы не жалко совсем, да хоть два берите лишь бы уроды sosnoolee посмачней..
Так если тот же результат можно получить дешевле - вай нот?
> не жалко совсем, да хоть два берите лишь бы уроды
> sosnoolee посмачней..Эталонное "назло бабушке отморожу уши".
а может это хитрый план раскрутить тебя на 2 гига оперативы?
> а может это хитрый план раскрутить тебя на 2 гига оперативы?А может он мой майнер запустит? Обещаю - не буду в нем рекламу крутить :)
"...без дополнения браузер потребляет всего 194 Мб" Жость... 3 запущенные виртуалки для маршрутизации, все вместе взятые потребляют меньше. А тут браузер, без куртизанок причем...
ПАретензии - к авторам стандартов. От JS до CSS-эффектов. Другое дело, что хорошая часть этих авторов сама в Мозилле работает.
Вообще-то там давно не только куртизанки, но казино, бордель и кабаре.
> при регистрации одной таблицы стилей, используемой для скрытия элементов, Firefox создаёт новые копии этой таблицы стилей для каждой страницы вместо совместного использования всеми страницами. Таким образом, AdBlock Plus требует около 60Мб ОЗУ для хранения базы правил блокировки, плюс около 4 Мб на каждую страницу и iframe.Это происходит только с AdBlock'ом?
Когда используется uBlock или другие блокировщики, Firefox ведет себя иначе?
В uBlock этот баг файрфокса учли и обошли (AFAIK он вообще на другом принципе работает, не через таблицы стилей)
Спасибо!
Попробую uBlock Origin.
Я так полагаю Хром этому не был подвержен? Иначе чем объяснить те тормоза, которые появились и заставили перейти на Хром, а FF использовать только для целей разработки.
Ошибаетесь. https://xakep.ru/2014/12/30/adblock-plus-memory/
> потребление памяти при открытии тестовой страницы, содержащей 429 блоков iframe, снизилось с 1960 Мб до 450 Мб1MB на 1 iframe ... Это конечно лучше чем 4.5MB, но учитывая что весь роман "Война и мир" в виде текста занимает 3MB ...
Тут на форуме много программистов, кто-нибудь может прикинуть куда уходит столько памяти?
DOM-дерево плюс какой-нибудь минимальный JS-контекст, плюс какой-то кэш готового отрисованного ифрейма - я даже удивлён, что так мало ест. Тем более, что там мегабайт на 70 минимум базовое потребление движков и интерфейса, который на тех же движках и построен.
Возьмем заглавную страницу opennet.ru - 37KB. При ее открытии palemoon (ручная сборка - максимально урезан, новый профиль без плагинов, js отключен) отъедает 10-12MB.
На что уходят эти мегабайты?Попробовал открыть в netsurf - выглядит также (чуть другой размер шрифта). Съедает 4MB - все равно много.
geany при открытии 40 файлов (размер некоторых файлы доходят до 300KB) съедает 8MB. Понимаю, что сравнение теплого с мягким, но неужели выполнить разбор и подсветку синтаксиса в таком количестве и объеме файлов проще, чем в html на 37KB?
> На что уходят эти мегабайты?Ну так сдампи процесс и посмотри :)
> и подсветку синтаксиса в таком количестве и объеме файлов проще, чем в html на 37KB?
Подсветка синтаксиса - да, попроще рендеринга, пожалуй.
> Подсветка синтаксиса - да, попроще рендеринга, пожалуй.Но ее ведь тоже рендерить нужно. Грубо говоря - в обоих случаях мы рендерим цветной текст. В случае браузера добавляются еще картинки, но позиция и размер картинки занимает четыре int. Сами картинки в распакованном виде занимают меньше 100КБ (для opennet.ru).
Если коротк - потому что браузер показывает не просто "цветной текст", даже если выглядит именно так.1) В случае браузера сама модель, в которой представляется содержимое, гораздо сложнее. От рамочек до логики обтекания - на всё это нужны структуры, даже если мы выводим "просто текст".
2) Браузер, рассчитанный на отображение сложного форматирования, , всё это дело максимально кэширует, причём на куче уровней - вплоть до битмапов с кусками страницы. Потому что типовой сайт каждый раз при прокрутке рендерить - слишком медленно.
3) JS (а он на Opennet есть) может обратиться к громадной куче свойств объектов в DOM. теоретически, конечно, можно эти свойста на лету создавать, но на практике, полагаю, как минимум часть создаётся всегда.
4) JS-движок - отдельная песня. С JIT, его статистикой и интерфейсами к DOM (там куча прокси-объектов со счётчиками ссылок, например) памяти может уйти довольно много. В Netsurf JS-движок очень прост и по умолчанию вообще отключён.
> 1) В случае браузера сама модель, в которой представляется содержимое, гораздо сложнее.
> От рамочек до логики обтекания - на всё это нужны структуры,
> даже если мы выводим "просто текст".Согласен. Но насколько сложнее? Какие параметры должны входить в подобные структуры? Какой будет примерный размер для среднего элемента, например ссылки?
> 2) Браузер, рассчитанный на отображение сложного форматирования, , всё это дело максимально
> кэширует, причём на куче уровней - вплоть до битмапов с кусками
> страницы. Потому что типовой сайт каждый раз при прокрутке рендерить -
> слишком медленно.Но если он уже сохранил кусок как битмап, то можно освободить все структуры которые использовались в данном куске и в итоге не должно получится слишком много.
> 3) JS (а он на Opennet есть) может обратиться к громадной куче
> свойств объектов в DOM. теоретически, конечно, можно эти свойста на лету
> создавать, но на практике, полагаю, как минимум часть создаётся всегда.
> 4) JS-движок - отдельная песня. С JIT, его статистикой и интерфейсами к
> DOM (там куча прокси-объектов со счётчиками ссылок, например) памяти может уйти
> довольно много. В Netsurf JS-движок очень прост и по умолчанию вообще
> отключён.Я специально отметил, что вовремя эксперимента js был отключен. Просто посмотрите код страницы opennet.ru - зачем для ее отображения мегабайты? ИМХО ее можно вообще интерпретировать на ходу и сразу отправлять в frame buffer.
>> 1) В случае браузера сама модель, в которой представляется содержимое, гораздо сложнее.
>> От рамочек до логики обтекания - на всё это нужны структуры,
>> даже если мы выводим "просто текст".
> Согласен. Но насколько сложнее? Какие параметры должны входить в подобные структуры? Какой
> будет примерный размер для среднего элемента, например ссылки?Есть простой способ найти ответы - попробовать написать свой браузер.
Но я понимаю, местные аналитики не ищут лёгких путей...
> Есть простой способ найти ответы - попробовать написать свой браузер.
> Но я понимаю, местные аналитики не ищут лёгких путей...Я пытаюсь учится на чужих ошибках. Я попросил более компетентных в этой области людей провести приблизительный анализ. Каюсь был не прав, теперь если возникнут вопросы почему LO или android потребляет память, не буду заглядывать в проекты и спрашивать остальных, а героически кинусь писать их с нуля.
> Каюсь был не прав, теперь если возникнут вопросы почему LO или android потребляет память, не буду заглядывать в проекты и спрашивать остальных, а героически кинусь писать их с нуля.Устами младенца, как говорится... Всё правильно, более компетентные люди просто ценят своё время, и не будут тут бисер метать. Я - это исключение.
А попытка написать свой текстовый редактор или браузер как раз неплохо помогает с приобретением опыта и переходом в вышеупомянутую категорию более компетентных, а также способствует пониманию других сопутствующих вещей, да.
А то вы так говорите, как будто написание LO это rocket science... Ничего сложного нет, просто нужны некоторые затраты времени и усилий, даже если не допишете. При этом, получаемый опыт бесценен. Так люди и учатся.
> Устами младенца, как говорится... Всё правильно, более компетентные люди просто ценят своё
> время, и не будут тут бисер метать. Я - это исключение.Не хочу вас обидеть, но судя по вашим ответам, вы слишком переоцениваете вашу компетентность.
> А то вы так говорите, как будто написание LO это rocket science...
> Ничего сложного нет, просто нужны некоторые затраты времени и усилий, даже
> если не допишете.Слишком смелое утверждение. Покажите ваш проект подобного уровня или хотя бы уровня abiword/geany.
> При этом, получаемый опыт бесценен. Так люди и
> учатся.Я так "учусь" уже очень много лет в одном коммерческом проекте - изначально тоже думал, что не rocket science и за погода-год будет минимальная первая версия. А реально ушло около пяти и развивать дальше это было невозможно - множество проблем с архитектурой. Пришлось выкинуть и начать заново, потом еще раз (из-за) смены ЯП. Теперь опыта вроде-бы хватает, но все разумные сроки давно вышли, энтузиазма нет никакого и проект тянется так как просто жалко кинуть то, на что ушла лучшая часть жизни ...
Гораздо более полезным для меня был опыт работы в различных открытых проекта, так как позволяет оценить чужие подходы к решению архитектурных проблем, да и в целом в чужом коде всегда есть чему научиться.
> учитывая что весь роман "Война и мир" в виде текста занимает 3MB ...Ох, выходит зря я себе гигабайты памяти покупал, всего-то нужно же 3 мегабайта, для войны и мира хватит, ёпрст...
Хотя, при чём тут нахрен война и мир...
> Тут на форуме много программистов, кто-нибудь может прикинуть куда уходит столько памяти?
Туда, куда нужно. Это не значит, что не нужно оптимизировать. Но в опенсорсе все просто, если много памяти уходит, а хочется чтобы имеющаяся память не использовалась - не используйте проект, он и вымрет согласно дарвину как динозавр.
> Но в
> опенсорсе все просто, если много памяти уходит, а хочется чтобы имеющаяся
> память не использовалась - не используйте проект, он и вымрет согласно
> дарвину как динозавр.Не вымрет - потому что ему ресурсов для выживания (которые постановляет ему маркетинг) хватает. Даже тут уже есть окученные, которые рады будут если браузер съест их всю память - зря они ее что ли купили? Им и в голову не переходит, что многие кроме браузера еще запускают и другие программы, а им самим (которым кроме браузера ничего не нужно) могло бы хватить гораздо более дешевого/компактного/легкого/долго работающего от батарейки железа.
И да, если бы динозавры не вымерли, человека скорее всего не было бы ...
> Даже тут уже есть окученные, которые рады будут если браузер съест их всю память - зря они ее что ли купили?Вы неправильно оцениваете реальность. Вот для меня, как разработчика, вопрос заключается в том, проще ли мне оптимизировать файрфокс или купить больше памяти. Угадайте ответ. Действительно, гораздо проще купить памяти, на деньги, полученные в результате другой, более продуктивной работы. Это всего лишь вопрос эффективного расходования времени и средств. Это не окученность. Окученность, это у вас, когда люди расходуют свое (или даже чужое) время и средства неэффективно только потому, что их окучили.
> Им и в голову не переходит, что многие кроме браузера еще запускают и другие программы, а им самим (которым кроме браузера ничего не нужно) могло бы хватить гораздо более дешевого/компактного/легкого/долго работающего от батарейки железа.
Почему же, приходит. Но железо я могу купить практически парой движений мыши или пальца, а вот оптимизировать софт - это требует гораздо больших усилий. Разработчики - это люди как правило совсем не бедные, так зачем бы им тратить немерянные усилия ради оптимизации софта для нищебрoдских конфигураций? Кто им это оплатит, нищебрoды? Разработчики не ищут "гораздо более дешевого/компактного/легкого/долго работающего от батарейки железа", по крайней мере по себе сужу. Разработчики покупают себе что-то близкое к верху любых рейтингов, потому и памяти хватает, и всего прочего...
> И да, если бы динозавры не вымерли, человека скорее всего не было бы ...
Давайте не будем углубляться в гадания, и я даже не хочу упоминать банальность про историю и сослагательное наклонение, мы живем в реальности, а вы?
> Вы неправильно оцениваете реальность. Вот для меня, как разработчика, вопрос заключается
> в том, проще ли мне оптимизировать файрфокс или купить больше памяти.Вы разработчик FF?
> Угадайте ответ. Действительно, гораздо проще купить памяти, на деньги, полученные в
> результате другой, более продуктивной работы. Это всего лишь вопрос эффективного расходования
> времени и средств. Это не окученность. Окученность, это у вас, когда
> люди расходуют свое (или даже чужое) время и средства неэффективно только
> потому, что их окучили.Если вы разработчик FF, то если вы сэкономите 1MB - вы сэкономите более 1TB для ваших пользователей.
> Разработчики - это люди как правило совсем не бедные, так
> зачем бы им тратить немерянные усилия ради оптимизации софта для нищебрoдских
> конфигураций? Кто им это оплатит, нищебрoды?У любого нормального программиста должно быть стремление к идеальному ПО, а не к наивысшему КПД по критерию $/час. СПО нужно для того, что бы двигаться к идеальным инструментам, а не высчитывать сколько приносит пользователь. Иногда от пользователя гораздо больше пользы, если он просто грамотно составит багрепорт или поможет с тестированием, чем если бы он донейтил.
Экономное ПО позволяет уменьшить частоту апгрейдов, а значит повысить уровень жизни в целом, меньше расходовать энергии как в процессе эксплуатации, так и при производстве/утилизации - соответственно меньше губить экологию.
> Разработчики не ищут "гораздо более
> дешевого/компактного/легкого/долго работающего от батарейки железа", по крайней мере
> по себе сужу.Вам не ненужен ноутбук весящий меньше 1кг и работающий неделю без подзаряда?
> всего 194 Мб
> всего 194 Мб
> всего 194 Мб
> всего 194 МбА мне бы хотелось, чтобы файрфокс использовал все гигабайты, что есть. Это плохо? Я чего-то не того хочу?
AdBlock плохой. Он устанавливает CSS (наверняка тривиальные) на место , занятое рекламой - наверно, CSS там посложнее. Хорошая Мозилла не удаляет рекламный CSS, но добавляет CSS от AdBlock. Конечно, виновата не дурость мозилкиной команды.
Выход один - прокси, режущий рекламу.
> Выход один - прокси, режущий рекламу.На нем неудобно "на лету" додавливать.
Ну, управлялка - не проблема. Хуже то, что прокси должен понимать HTTPS и фактически работать как MITM. При этом как через него пробросить в браузер всё, что нужно (запросы про самоподписанные сертификаты и т.п.), как организовать пиннинг и т.д. - непонятно.
> Открой для себя FiddlerОткрыл:
"Fiddler is an HTTP debugging proxy server application written by Eric Lawrence, formerly a Program Manager on the Internet Explorer development team at Microsoft."И закрыл:
"Operating system Windows XP, 2003, Vista, 2008, 7, 8"> и Squid версий выше 3.4.
Ты то сам пробовал там для https mitm настроить? Я люблю с софтом поковыряться, но не настолько. Раньше squid использовал для http, сейчас polipo. Есть простые в использовании прокси для https?
Выход один - не пользоваться кривым софтом.
uBlock — и всё нормуль.
> uBlock — и всё нормуль.С uMatrix лучше - всякие майнеры на JS тоже идут в пень. А некоторые сайты столько JS вгружают что память утекает прямо на глазах.
> С uMatrix лучше - всякие майнеры на JS тоже идут в пень.
> А некоторые сайты столько JS вгружают что память утекает прямо на
> глазах.Я использую uBlock, NoScript и Policeman, мне хватает.
Аналогично. Единственное - с некоторых пор мозилловцы таки довели - так что теперь пришлось отползти на RequestPolicy - и это печально.Из этой тройки никакое расширение не выкинешь без потери удобства или защиты.
Зачем нам AdBlock если есть uBblock?
200-300 МЕГАБАЙТ на то, чтобы отключить фреймы? Да этот яжык - еталон быдлопрограммирования! Как называется сие чудо?
ЗЫ: пожалуй переквалифицируюсь в программиста на квикбейсике и обрету мировую славу.
> ЗЫ: пожалуй переквалифицируюсь в программиста на квикбейсике и обрету мировую славу.Что мешало до сих пор? Или какой-то танцор не такой? Кто хотел и мог, тот уже обрел, а вот такое звездобoльство слегка раздражает, иногда ЧСВ стоит и умерить, согласно жестокой реальности...
И да, прежде чем мегабайты мерить, вы могли бы хотя бы один из них спасти, чисто чтобы мы поняли, что вы не просто так, а правда программист. Иначе все эти пoнты как-то смешно выглядят...
> Иначе все эти пoнты как-то смешно выглядят..."Сперва добейся", ога))
Ну как бы браузер - это уже давно такая специфическая многозадачная операционная система, и ни динамическая природа JS, ни архитектура DOM не способствуют непоеданию этой осью памяти. Патч как-то способствует. Подозреваю не только в связи с adBlock (с uBlock это должно работать не хуже, да и в других случаях должно проявится.)Amen
Ах, ну да, и так работает, конечно:
> потребление памяти без AdBlock Plus снизилось на 40 Мб.