Pourquoi les pages Web prennent-elles autant de RAM?

Après avoir laissé un tas de pages ouvertes sur Chrome, mon ordinateur devient lent. Windows Task Manager montre que certaines pages prennent beaucoup de RAM:

Entrez la description de l'image ici

  1. Pourquoi prennent-ils tant de RAM?
  2. Y a-t-il un moyen de savoir combien de RAM chaque page prend, de sorte que j'invite?

Je vous remercie.

Chrome est le consommateur le plus lourd de RAM sur le marché des navigateurs. Il traduit une utilisation accrue de la mémoire pour une vitesse accrue. Si vous gagnez peu sur la RAM disponible, cela devient le navigateur le plus lent du marché (par rapport à celui qui serait assez petit dans l'utilisation des ressources pour rester complètement dans la RAM au lieu de la pagination sur le disque dur).

Ici, l'équipe de développement de Chromium discute le bon et le mauvais de ce modèle de mémoire utilisé dans Chrome .

Et ici, vous pouvez configurer Chrome pour utiliser des modèles de mémoire alternatifs avec différents compromis, y compris le mode de processus unique "mode firefox": http://dev.chromium.org/developers/design-documents/process-models

  1. Pourquoi les pages Web prennent-elles autant de RAM?

Chrome utilise un modèle par processus qui signifie que pour chaque onglet (ou groupe d'onglets associés), il utilise un processus distinct au lieu d'un thread distinct. Cela signifie essentiellement que chaque onglet est un programme de course séparé. De cette façon, en cas de panne, ils descendent par eux-mêmes au lieu de supprimer tout le navigateur (il fait la même chose pour les bouchons et la plupart des extensions).

Cela a ses avantages évidents (le sandboxing étant le principal), mais bien sûr, il présente également des inconvénients, comme le fait que chacun a des frais généraux de mémoire, ce qui signifie que Chrome utilise plus de RAM dans l'ensemble pour le même ensemble de pages ouvertes que les navigateurs qui le font Ne pas utiliser un modèle par processus (d'autres navigateurs ont commencé à se diriger vers cette méthode depuis que Chrome a été diffusé).

Comme vous l'avez noté, la règle par processus ne signifie pas nécessairement que chaque onglet obtient son propre processus. Cela dépend de la façon dont la page a été ouverte. L'utilisation de l' ouverture dans un nouvel onglet ou une nouvelle fenêtre ouvre la page / le lien dans le même processus que le parent, mais ouvrir dans la fenêtre incognito l' ouvre dans un nouveau processus, de même que le nouvel onglet et la nouvelle fenêtre commandent.

Une autre raison pour laquelle les pages prennent beaucoup de RAM est que ces jours-ci, la plupart des pages Web incluent beaucoup de JavaScript et Flash qui les rend à la fois CPU et RAM lourd (ce qui signifie également que les systèmes plus anciens ne peuvent pas naviguer sur Internet de façon confortable, donc il n'y a pas Plus long qu'un «système utilisé, ancien, mais bon pour la navigation»). Pire encore, les plugins et les extensions (et éventuellement même le Chrome lui-même) pourraient fuir la mémoire après un certain temps, augmentant l'utilisation de la mémoire à temps.

  1. Y a-t-il un moyen de savoir combien de RAM chaque page prend, de sorte que j'invite?

Malheureusement, il n'y a pas de moyen (connu / facile) de voir l'utilisation de la mémoire par page. Le moyen le plus proche est d'appuyer sur Shift + Echap ou de cliquer avec le bouton droit de la souris sur la languette et de sélectionner le Gestionnaire des tâches pour voir l'utilisation de la mémoire par processus.

Une chose que vous pouvez essayer est d'ouvrir chaque page dans un nouveau processus (en utilisant l'une des méthodes susmentionnées) et ensuite de comparer.

Essayez la clé, les outils, les outils de développement, les audits

Beaucoup de suggestions pour améliorer l'efficacité de votre page Web, les raisons pour lesquelles les pages Web spécifiques d'autres personnes utilisent des ressources excessives.