Vaka
А теперь объясните - что именно вас волнует в фиксированном расходе памяти в 15 Мб, который во время работы браузера уже не изменится? Я вижу только одно объяснение: объем памяти вашего компьютера 128 Мб и вы экономите память, где только можно. И поэтому никогда не открываете больше одного таба в браузере, потому что уже один дополнительный сайт может запросто израсходовать памяти больше, чем Adblock Plus (особенно, если Adblock Plus при этом отключить).
Для справки: если только взять текст RuAdList в формате UTF-16 (а в браузере всё хранится именно в этом), то получается 1 Мб. Это 18000 фильтров, к которым хранится еще уйма дополнительной информации (у нас ведь JavaScript, а не Си, на особую компактность структур данных рассчитывать не приходится).
К этому добавляем код Adblock Plus: 0.5 Мб одного только текста плюс как минимум два откомпилированных варианта (интерпретатор и JIT). Плюс элементы, которые Adblock Plus добавляет в пользовательский интерфейс с картинками и всем прочим.
Если кто-то хочет конкретно разобраться, откуда берутся 15 Мб - флаг ему в руки. Но я лучше потрачу это время на поиск утечек памяти, если таковые имеются, поскольку они могут вызвать серьёзные последствия и на современных компьютерах, а не только на музейных экспонатах.
PS: Если бы я мог улучшить быстродействие Adblock Plus за счет расхода памяти в 15 Мб - я бы это немедленно сделал. Такой расход памяти никто не заметит, а вот убыстрение расширения - очень даже.
Отредактировано Владимиp Палант (10-10-2011 19:35:11)
Отсутствует
Vaka
Просто поверь, глобальному большинству начхать на лишние 10-15 Мб памяти когда её объемы исчисляются гигабайтами. Они даже не подозревают сколько памяти занимает браузер! Они это замечают только когда он внезапно занимает всю доступную память из-за какой-нибудь утечки в каком-нибудь особо корявом расширении. За -10 Мб списабо скажешь ты и ещё полтора землекопа если вообще заметишь их без микроскопа. Когда браузер с десятком страниц занимает 300-500 Мб (мы же не выключали кэш в памяти, не правда ли? и не кастрировали его?) то лишние 15 Мб на их фоне мягко говоря не играют абсолютно ни какой роли.
Отредактировано Lain_13 (10-10-2011 21:28:28)
Отсутствует
Vaka
Да, четырехядерный процессор и 128 Мб оперативной памяти - жгучая комбинация
Я не оправдываюсь - я пытаюсь объяснить какие-то азы фетишистам, которые не могут нарадоваться, когда приобретенная за кровные деньги оперативная память простаивает без дела.
Отсутствует
IIELViSII
Не беспокойся, «лишних» 10-12 Мб в памяти на скорость аж никак не влияют.
Влияет алгоритм поиска правил (но он весьма шустрый), влияют регулярки (но их мало) и правила скрытия (но они в основном тоже быстрые).
А несколько лишних метров в памяти, причём фиксированных в размере (не растут), на скорось аж никак не влияют.
Отредактировано Lain_13 (11-10-2011 01:21:58)
Отсутствует
Vaka
О, какой ты у нас. Обозвал автора самого успешного расширения для Фокса, а сам весь в белом стоишь такой красивый.
А ещё обвинения выдвигаешь беспочвенные:
1. Не больше самого браузера. Ты, кстати, в about:memory заглядывал? Сколько там в gc-heap-chunk-dirty-unused оказалось с и без адблока? Небось потерявшиеся 10-12 метров как-раз там и валяются. А это значит, что память не занята и может быть использована самим браузером. Просто не совсем компактно данные в чанках разместились и все дела, а это не критично (хотя наверняка можно отчасти исправить при _очень большом желании_ и _затратах времени превышающих все разумные рамки_).
2. Про тормоза ты вообще взял нечто с потолка. Где конкретно тормозит? В чём тормоза выражаются? Давай, рассказывай, хотя сейчас тебя забанят и фиг мы услышим конкретику в ближайшее время.
3. 10 строчек кода? Нет, ты теперь прямо таки обязан сделать нам свой собственный AdBlock с карточными играми и девицами лёгкого поведения в десяти строках… ну пусть в 100. И чтоб был такой же удобный и функциональный.
> а вы гриб
Это было сложно не заметить, не правда ли? :3
Отредактировано Lain_13 (12-10-2011 03:41:01)
Отсутствует
Lain_13
Не волнуйся. Насчет тормозов он напутал - это он свое собственное расширение имел в виду, которое при загрузке каждой страницы регулярными выражениями перепахивает весь HTML-код. Правда, на больших страницах (больше 512 кб) тормозит только сериализация в HTML: расширение сдается и свои регулярки не запускает. Но памяти при этом гробится независимо уйма. Зато при запуске браузер много памяти не занимает.
Edit: Сериализация в HTML там происходит как минимум пять раз для каждой страницы. Действительно, а почему бы и нет - это же не ресурсоемкая операция?
Отредактировано Владимиp Палант (14-10-2011 11:34:38)
Отсутствует
Владимиp Палант
^___^
Добавлено 14-10-2011 12:51:42
Tiger.711
Да, такая экспрессия была, такая экспрессия!
Отредактировано Lain_13 (14-10-2011 12:51:42)
Отсутствует
Владимиp Палант
> http://www.opennet.ru/opennews/art.shtml?num=32050
Судя по новости на ведроидах мобильный фокс будет без интерфейса на XUL'е, а значит и без всех привычных расширений. Обещают, что Jetpack-расширения работать будут.
На сколько я помню там была куча проблем с переносом AdBlock'а на Jetpack. Это всё ещё так? А то вижу там как минимум один аноним уже волнуется.
Отсутствует
Lain_13
Рекомендую читать не перевод, а оригинал. О том, что будет поддерживаться только Add-on SDK (Jetpack), речи пока нет. Более того, на данный момент они даже не могут сказать, в какой степени смогут поддерживаться расширения, созданные с помощью Add-on SDK (сейчас они не поддерживаются вообще, Add-on SDK создает исключительно расширения для стандартного Firefox). Они собираются обсудить с разработчиками Add-on SDK (как со специалистами по разработке расширений внутри Мозиллы), как поддерживать расширения, если будет использоваться нативный пользовательский интерфейс. А уж что из этого обсуждения выйдет - узнаем потом.
Основная часть Adblock Plus никак не зависит от XUL и будет продолжать работать независимо. Проблема только в пользовательском интерфейсе, которого в Firefox Mobile и так не сильно много. Вопрос тут в том, как они позволят расширять свой пользовательский интерфейс. Думаю, что будет предоставлено несколько стандартных мест для интеграции расширений - для Adblock Plus это большой проблемы не составит.
Отредактировано Владимиp Палант (17-10-2011 13:10:03)
Отсутствует
Немного не в тему, но
Отсутствует
RufusUA
Зависит от того, насколько напоминает, и деньги здесь ни при чем. Никакой лицензии для информации на adblockplus.org не указано. Это означает, что все права без ограничений принадлежат владельцу сайта. Размещать информацию на других сайтах без разрешения владельца (а тем более без указания первоисточника) противозаконно. См. положения об авторском праве.
Отсутствует
CoolCmd
Если тырит, но указывает откуда и авторов, то имеет полное право. Фильтры у нас под CC BY-SA 3.0.
Отредактировано Lain_13 (03-11-2011 18:52:18)
Отсутствует
Владимиp Палант
Привет,
Наткнулся на проблему с блокировкой содержимого фрейма.
У меня в подписке было правило:
||banner.kiev.ua^$third-party,domain=~referatu.net.ua
В браузере Хром и Хромиум при использовании твоего расширения фреймы с banner.kiev.ua не блокировались.
Сайты с такими фреймами: promobil.kiev.ua и series40.kiev.ua
В то же время в Firefox всё успешно блокировалось. Я убрал third-party и заработало в Хроме.
Судя по всему расширение в Хроме проверяет только домен первого уровня, тогда как в фоксе проверяются и субдомены.
Может стоит привести к общему виду?
Отсутствует
Lain_13
В Chrome у нас пока нет нормального распознавания доменов первого уровня. Нужен JavaScript-код для работы с этим списком (автоматически переведенным в какой-нибудь более подходящий формат). Алгоритм для такого кода на сайте описан. Chrome этот список использует, но расширениям доступ не предоставляет. Если кто-то хочет этот код написать - с радостью приму. Иначе - когда будет время.
Там есть еще некоторая сложность в том, что нужно преобразовывать Punicode (Chrome это вроде бы не всегда делает автоматически) и распознавать IP-адреса (с IPv4 было уже несколько вариантов написания, а IPv6 ситуацию не улучшил).
Отредактировано Владимиp Палант (10-11-2011 14:33:48)
Отсутствует
Lain_13
Вроде нет. При той скорости, с которой исправляются проблемы для расширений, как-то лень тратить время на вещи, которые можно реализовать самому.
Отредактировано Владимиp Палант (10-11-2011 15:09:51)
Отсутствует
Владимиp Палант
http://forum.mozilla-russia.org/viewtop … 20#p530920
Отредактировано Lain_13 (16-11-2011 17:47:13)
Отсутствует
Lain_13
Речь о Хроме? Расширение в одном процессе, страница в другом. Блокировка осуществляется content script'ом в процессе страницы - пока этот content script запросит у расширения настройки, некоторые скрипты уже успевают загрузиться. Ждем, пока разработчики официально выпустят webRequest API, до тех пор рекомендую включать "API экспериментальных расширений" и устанавливать экспементальные сборки. Этими экспериментальными сборками уже пользуется больше 3 тысяч человек, жалоб - ноль.
Отредактировано Владимиp Палант (16-11-2011 18:20:01)
Отсутствует
Отсутствует
gest
Это http://crbug.com/97392 - экспериментальная сборка не знает, какой именно элемент заблокирован, соответственно она его не прячет. Если размер для этого элемента жестко прописан в документе, это место просто будет пустым.
Отсутствует