2008-08-11 7 views
6

Recientemente he tenido problemas con Firefox 3 en Ubuntu Hardy Heron.¿Algún tipo de administrador de tareas para JavaScript en Firefox 3?

Voy a hacer clic en un enlace y se bloqueará por un tiempo. No sé si es un error en Firefox 3 o una página que ejecuta demasiado JavaScript del lado del cliente, pero me gustaría intentarlo y depurarlo un poco.

Por lo tanto, mi pregunta es "¿hay alguna forma de tener algún tipo de explorador de procesos, o administrador de tareas para Firefox 3?"

Me gustaría poder ver qué pestañas usan qué porcentaje de mi procesador a través del JavaScript en esa página (o cualquier cosa en la página que está causando el uso de CPU/memoria).

¿Alguien sabe de un complemento que hace esto, o algo similar? ¿Alguien más ha hecho este tipo de inspección de otra manera?

Sé acerca de FireBug, pero no puedo imaginar cómo lo usaría para señalar con qué pestaña está utilizando una gran cantidad de recursos.

¿Alguna sugerencia o idea?

Respuesta

7

Probablemente es awesome firefox3 fsync "bug", que es un montón gigante de fallas.

En resumen

  • Firefox3 ahorra a sus marcadores y el historial en una base de datos SQLite
  • Cada vez que se carga una página que escribe a esta base de datos varias veces
  • SQLite se preocupa profundamente que no se pierde sus marcadores, por lo que cada vez que escribe, indica al kernel que elimine su archivo de base de datos en el disco y se asegure de que esté completamente escrito
  • Muchas variantes de Linux, cuando se les ordena que se vayan, limpian TODOS LOS ARCHIVOS. Esto puede tomar hasta un minuto o más si tiene tareas en segundo plano haciendo cualquier tipo de cosas de disco intensivo.
  • El kernel hace que firefox espere mientras ocurre este color, lo que bloquea la interfaz de usuario.
1

No hay ningún tipo de herramienta de "explorador de procesos" para Firefox; pero está el http://developer.mozilla.org/en/docs/Venkman con el modo de creación de perfiles, que puede usar para ver el tiempo empleado por los scripts chrome (es decir, sin contenido, que no es página web).

Por lo que he leído al respecto, DTrace también podría ser útil para este tipo de cosas, pero requiere crear una compilación personalizada y posiblemente agregar sondas adicionales a la fuente. Aún no he jugado con eso.

1

Hay un thorough discussion of this que explica todos los problemas relacionados con fsync que afectaron las versiones anteriores a la 3.0 de FF. En general, tampoco he visto el comportamiento desde entonces, y realmente no debería ser un problema en absoluto si su sistema no está realizando tareas intensivas de IO. Firebug/Venkman son lindos depuradores, pero serían dolorosos al descubrir este tipo de problemas para el código de otra persona, IMO.

También me gustaría que hubiera una manera fácil de ver la utilización de la CPU en Firefox por pestañas, ya que a menudo me encuentro con FF comiendo 100% de CPU, pero no tengo idea de qué parte está causando el problema.

3

Por lo tanto, mi pregunta es, ¿hay alguna manera de tener algún tipo de explorador de procesos o administrador de tareas para Firefox 3?

Debido a la forma en que está construido Firefox esto no es posible en este momento. Pero el nuevo Internet Explorer 8 Beta 2 y el recién anunciado navegador Google Chrome se dirigen en esa dirección, así que supongo que Firefox también se dirigirá allí.

Aquí hay una publicación ( Google Chrome Process Manager), de John Resig de Mozilla y la fama de jQuery sobre el tema.

1

XUL Profiler es una asombrosa extensión que puede señalar extensiones y el lado del cliente JS se ha vuelto banano en cuanto a la CPU. No funciona en base a pestañas, sino por script (más o menos). Normalmente puede relacionar esos scripts .js con sus pestañas o extensiones a mano.

También vale la pena mencionar que Google Chrome ha incorporado un administrador de tareas realmente bueno que proporciona memoria y uso de CPU por pestaña, extensión y complemento.

[XUL Profiler] es un generador de perfiles de Javascript. Es muestra el tiempo transcurrido en cada método como un gráfico , así como las zonas de lienzo del navegador redibuja para ayudar a rastrear el consumo de trozos de código de CPU.

Rastrea todas las llamadas JS y eventos de pintura en XUL y el contexto de las páginas. Crea una animación que muestra dinámicamente las zonas de lienzo que se vuelven a dibujar.

A partir de FF 3.6.10 no está actualizado ya que ya no está marcado como compatible. Pero todavía funciona y puede anular la incompatibilidad con el igualmente impresionante MR Tech Toolkit extension.

Cuestiones relacionadas