Hay pocas tan importantes para muchos usuarios de navegadores como las extensiones para el navegador, y en ese aspecto Chrome hace muchos años que puede presumir de tener más que ningún otro.
Sin embargo, estas pueden ser un arma de doble filo, porque aunque en la mayoría de los casos nos ofrecen utilidad extra, también lo hacen aumentando el consumo de recursos de un navegador que ya es más que famoso por ello. Es algo que deja claro este informe de DebugBear tras analizar el impacto en rendimiento que tienen las 1000 extensiones más populares para Google Chrome.
Usando el CPU y consumiendo memoria como si no hubiese un mañana
DebugBear analizó cuatro métricas diferentes: el tiempo de CPU de la página, el retraso de renderizado de la página, el consumo de tiempo de CPU en segundo plano, y el consumo de memoria del navegador.
Explica que cuando se ejecuta JavaScript (en lo que están escrito las extensiones) se bloquea el hilo principal del navegador, lo que quiere decir que este no puede responder a las interacciones del usuario.
Cuando no hay ninguna extensión instalada cargar una página como example.com toma unos 40 milisegundos de tiempo de CPU, mientras que si has instalado una extensión como Evernote o Grammarly el tiempo aumenta a más de 500 milisegundos.
La lista de las 20 extensiones más lentas de entre las 100 más usadas, es decir, las que tienen varios millones de instalaciones en la Chrome Web Store, incluyen a Evernote, Grammarly, Avira Password Manager, Flash Video Downloader, Dashlane, Office, Avira Browser Safety, LastPass, AVG/Avast SafePrice, Skype, AdGuard AdBlocker, Norton Password Manager, Ghostery, y más.
Si notas algo que tienen en común es que muchas son soluciones de seguridad de empresas antivirus o gestores de contraseñas. Esto se explica en algunos casos porque las extensiones tienden a inyectar código en cada página que visita el usuario en lugar de una específica. Un gestor de contraseñas tiene que ver si hay formularios de inicio de sesión en cada web por ejemplo.
Sin embargo, no todas las extensiones necesitan hacer eso y tampoco necesitan cargar todo el código de la extensión solo para verificar las condiciones relevantes. DebugBear sugiere que para mejorar el rendimiento podrían optar por separar las funciones primarias de la extensión de modo que el código sea cargado solo si es necesario.
Por más que unos pocos milisegundos suenen a nada, hay que tomar en cuenta lo que pasa cuando acumulamos páginas y extensiones, todo se va juntando y al final el impacto en el rendimiento termina siendo mucho mayor para el usuario, especialmente si tiene muchas extensiones y muchas pestañas abiertas.
El dilema de los Adblockers
En el caso del consumo de memoria Avira se para en el tope de la lista aumentando el consumo de memoria en 218 MB, seguida muy de cerca por Adblock Plus, AdBlock, AdBlock y Omega Adblocker.
En cuanto al uso de CPU en segundo plano pasa casi lo mismo, Avira arriba por mucho seguida de varios bloqueadores de anuncios. La cuestión es que la mayoría de los adblockers funcionan bloqueando peticiones de red que inicia la página, y para decidir cuáles bloquear necesitan hacer cierto procesamiento en el fondo.
Lo que pasa muchas veces es que aunque un adblocker puede reducir el tiempo de CPU en la página al bloquear elementos, también puede aumentarlo en el fondo justo decidiendo qué bloquear. Irónico.
DebugBear analizó 20 bloqueadores y herramientas de privacidad como DuckDuckGo Privacy Essentials, uBlock Origin, Ghostery, Privacy Badger, Adblock Plus, etc. y encontró que aunque varios reducen el tiempo de CPU en la página también la aumentan en segundo plano dependiendo de cuántas expresiones tienen que verificar.
En cuanto a la memoria si bien el adblocker consume bastante ejecutándose en el fondo, usualmente esto se compensa enormemente reduciendo el consumo de memoria de la página, siempre que la página tenga muchos anuncios. El dilema es que en una página sin anuncios o sin casi anuncios, a veces el bloqueador consume más recursos del navegador solo por estar ahí.
No todos funcionan igual, herramientas como DDG Privacy Essentials, uBlock Origin, y Privacy Badger no sufren casi de este problema, pero muchos otros adblockers incluyendo famosos como Adblock Plus y Ghostery si añaden su peso al CPU.
Más información | DebugBear
Ver 23 comentarios