Какой-то диспетчер задач для JavaScript в Firefox 3?

Недавно у меня были проблемы с Firefox 3 на Ubuntu Hardy Heron.

Я нажму на ссылку, и она будет висеть некоторое время. Я не знаю, является ли это ошибкой в ​​Firefox 3 или страницей, выполняющей слишком много клиентского JavaScript, но я бы хотел немного отладить ее.

Итак, у меня вопрос: есть ли способ использовать какой-нибудь проводник процессов или менеджер задач для Firefox 3?

Я хотел бы иметь возможность видеть, какие вкладки используют какой процент моего процессора через JavaScript на этой странице (или что-нибудь на странице, которая вызывает использование процессора / памяти).

Кто-нибудь знает плагин, который делает это, или что-то подобное? Кто-нибудь еще проводил такую ​​проверку другим способом?

Я знаю о FireBug, но не представляю, как бы я использовал его, чтобы определить, какая вкладка использует много ресурсов.

Любые предложения или идеи?

11.08.2008 05:24:33
5 ОТВЕТОВ
РЕШЕНИЕ

Вероятно, это огромная ошибка в Firefox3 fsync , которая является огромной кучей неудач .

В итоге

  • Firefox3 сохраняет свои закладки и историю в базе данных SQLite
  • Каждый раз, когда вы загружаете страницу, она записывает в эту базу данных несколько раз.
  • SQLite очень заботится о том, чтобы вы не потеряли свои закладки, поэтому каждый раз, когда он пишет, дает ядру команду сбросить файл базы данных на диск и убедиться, что он полностью записан.
  • Многие варианты linux, когда говорят, что нужно сбрасывать, сбрасывают КАЖДЫЙ ФАЙЛ. Это может занять до минуты или более, если у вас есть фоновые задачи, выполняющие какие-либо работы с дисками.
  • Ядро заставляет Firefox ждать, пока происходит этот сброс, что блокирует пользовательский интерфейс.
9
11.08.2008 06:35:58

Для Firefox нет никакого вида «проводника процессов»; но есть http://developer.mozilla.org/en/docs/Venkman с режимом профилирования, который вы можете использовать, чтобы увидеть время, потраченное на скрипты chrome (то есть не контент, а не веб-страницы).

Из того, что я читал об этом, DTrace также может быть полезен для такого рода вещей, но это требует создания пользовательской сборки и, возможно, добавления дополнительных зондов к источнику. Я еще не играл с этим.

1
11.08.2008 15:42:35

Это подробное обсуждение, которое объясняет все проблемы, связанные с fsync, которые затрагивали версии FF до 3.0. В общем, с тех пор я не видел поведения, и на самом деле это не должно быть проблемой, если ваша система также не выполняет интенсивные задачи ввода-вывода. Firebug / Venkman отлично подходят для отладчиков, но им было бы больно выяснять подобные проблемы для чужого кода, IMO.

Я также хотел бы, чтобы был простой способ взглянуть на загрузку ЦП в Firefox по вкладкам, так как я часто нахожусь с FF, потребляющим 100% ЦП, но не представляю, какая часть вызывает проблему.

1
20.08.2008 03:47:03

Итак, мой вопрос: есть ли способ использовать какой-нибудь проводник процессов или диспетчер задач для Firefox 3?

Из-за того, как Firefox построен, в настоящее время это невозможно. Но новый Internet Explorer 8 Beta 2 и только что анонсированный браузер Google Chrome движутся в этом направлении, поэтому я полагаю, что Firefox тоже пойдет туда.

Вот пост ( менеджер процессов Google Chrome ) Джона Резига из Mozilla и известность jQuery по этому вопросу.

3
2.09.2008 08:37:30

XUL Profiler - это замечательное расширение, которое может указывать на расширения и JS-клиентские бананы с точки зрения использования процессора. Он работает не для отдельных вкладок, а для каждого сценария (или около того). Обычно вы можете связать эти сценарии .js со своими вкладками или расширениями вручную.

Также стоит упомянуть, что в Google Chrome встроен действительно хороший менеджер задач, который дает память и использование процессора для каждой вкладки, расширения и плагина.

[XUL Profiler] является профилировщиком Javascript. Он отображает затраченное время в каждом методе в виде графика, а также перерисовывает зоны холста браузера, чтобы помочь отследить использование фрагментов кода процессором.

Отслеживает все вызовы JS и рисует события в XUL и контексте страниц. Создает анимацию, показывающую динамически перерисовываемые зоны холста.

Начиная с FF 3.6.10 он не обновлен, так как он больше не помечен как совместимый. Но это все еще работает, и вы можете преодолеть несовместимость с таким же замечательным расширением MR Tech Toolkit .

1
23.05.2011 22:50:45