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?
źródło
Odpowiedzi:
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.
źródło