23 сент. 2009 г.

Тормозилла системы ...

Цель: Ограничиваем прожорливость npviewer.bin'а
Дано: Mozilla Firefox 3.0.13, nspluginwrapper 1.3.0, npviewer.bin 1.3.0, Linux 2.6.29.6-desktop

Решение:
Не раз замечал утечку npviewer.bin'а (кушал много процессорного времени, вражина эдакая!), при проигрывании flash'ы в мозилле, дык бы отказался, но вот по рабочим вопросам не позволительно ...

на офф сайте nspluginwrapper, ничего вразумительного не нашлось ... увы.

Устранить по человечески, да вот руки не доходили, обходился чистым ps grep && kill ... но частота такой ситуации увеличивалась (теперь наверно каждый веб-фломастер считает долгом сунуть на свой сайт рекламку на флэше) и каждый раз тюкать так ... увы не наш метод.

Сперва нарисовал для себя что то подобное
for name in $(ps ux | awk '/npviewer.bin/ && !/awk/ {print $2}'); do kill "$name"; done

как результат работы, никакой флэши, да вот забыл, что нужные мне ролики он так же глушить будет ... данное решение не устроило ...

Вспомнилась к счастью, а может и нет, утилитка cpulimit, не во всех дистрах есть но в репозиториях практически у всех, ставим, наслаждаемся (под рутом):
#urpmi cpulimit
#cpulimit -e /usr/lib/nspluginwrapper/i386/linux/npviewer.bin -l 10 &


лимит сами выставляйте, по своим требованиям, в данном случае -l 10 (limit 10%).

для того что бы вообще про неё забыть раз навеки или хотя бы до той поры пока утечку не устранят (кстати наблюдалась она и на более ранних реализациях данного бина) занесем последнюю строчку в rc.local:
#echo '/usr/bin/cpulimit -e /usr/lib/nspluginwrapper/i386/linux/npviewer.bin -l 10 &' >> /etc/rc.local



Примечание:
глянуть где npviewer.bin
#ps ux | awk '/npviewer.bin/ && !/awk/ {print $11}'

глянуть где cpulimit
#whereis cpulimit

1 комментарий:

  1. А у меня при Хромиуме та же самая проблема, хотя везде пишут, что это у Мозиллы....

    ОтветитьУдалить