Dlaczego strona internetowa Gmaila wykorzystuje tak dużo pamięci RAM? [Zamknięte]


14

Kiedy loguję się na swoje konto Gmail (używając Firefoksa 31.0 za pośrednictwem Ubuntu 14.04 64bit), jeśli zapiszę tę stronę na pulpicie, rozmiar pliku to 1,3 MB.

Jeśli jednak spojrzę na zużycie pamięci RAM przez Firefoksa przed zalogowaniem się do Gmaila, a następnie po. GMail zwiększa zużycie pamięci RAM o ponad 200 MB!

Nawet kiedy uruchamiam Firefox w trybie awaryjnym (który wyłącza wtyczki / rozszerzenia), widzę ten ogromny wzrost zużycia pamięci RAM po zalogowaniu się do Gmaila.

Na pewno za kulisami aplikacja sieciowa GMail nie pobrała i nie buforowała tak szybko ponad 200 MB danych.

Pomyślałem, że być może buforuje jakąś lokalną pamięć podręczną, której mógł używać we wcześniejszej sesji, ale użyłem innej przeglądarki internetowej (z którą nigdy wcześniej nie logowałem się do Gmaila), a także zużywało dużo więcej pamięci RAM po zalogowaniu się GMail.

W jaki sposób strona internetowa o pojemności 1,3 MB zajmuje ponad 200 MB pamięci RAM przy każdym logowaniu?

Jaka nieefektywność lub strategia buforowania może przyczynić się do tego, że ta strona internetowa zużywa 200 razy (w pamięci RAM) ilość danych, które faktycznie wyświetla?


Z powodu złego zarządzania zasobami GMAIL postanowiłem ponownie zacząć używać klienta poczty e-mail (w szczególności MailSpring ).
LonnieBest

Odpowiedzi:


16

Strona Gmaila uruchamia wiele skryptów w tle na licznikach czasu itp. Zajmują one pamięć podczas pracy. Twoja „zapisana” kopia nie będzie miała tych skryptów (przynajmniej nie działających / działających) i powiązanych z nimi obiektów w pamięci.

Jeśli używasz profilera pamięci (wbudowanego w większość narzędzi programistycznych współczesnych przeglądarek), możesz zobaczyć, co tak naprawdę korzysta z pamięci.

Kiedy robię migawkę mojej „bezczynnej” strony Gmaila, w pamięci jest załadowanych 136 441 obiektów.

Zakres tych obiektów wynosi od 32 bajtów pamięci, przez kilka kilobajtów, aż do ponad 4 megabajtów, w zależności od obiektu.

Nie obejmuje to pamięci używanej przez przeglądarkę do renderowania strony.


13
Czy to nie wydaje się okropnie rozdęte w przypadku strony zawierającej 100 wierszy „Od”, „Temat” i „Data” z kilkoma linkami i mniejszymi obrazami? Mam na myśli wstępne ładowanie niektórych rzeczy ze względu na wydajność, ale nie mogę sobie wyobrazić, jak strona może być tak źle napisana, że ​​uruchomienie 200 MB pamięci RAM. W tym tempie pewnego dnia strona internetowa GMAIL zużyje więcej pamięci RAM niż zmieściłaby się na pustym dysku CD!
LonnieBest

2
Nawet tutaj w przyszłości jest to nadal wielka sprawa. Z wersji HTML przeszedłem z 200 MB zużycia pamięci RAM do 20 MB. wtf
YetAnotherRandomUser

Ta podstawowa funkcja HTML działa świetnie na Chromebooku z 2G RAM, który może obsłużyć tylko najwyżej jedną kartę Gmail na raz. Teraz mogę mieć wszystkie 3 moje konta Gmail na karcie i nadal mam dużo pamięci RAM. Wskazówka, jak przełączać się między wieloma kontami Gmail w podstawowej wersji HTML: thetechgears.com/…
user3773048,

2
@LonnieBest Ten czas nadszedł
Talha Junaid

5 lat później widzę, że używa regularnie około 600 MB.
wybaczono
Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.