АвтоАвтоматизацияАрхитектураАстрономияАудитБиологияБухгалтерияВоенное делоГенетикаГеографияГеологияГосударствоДомДругоеЖурналистика и СМИИзобретательствоИностранные языкиИнформатикаИскусствоИсторияКомпьютерыКулинарияКультураЛексикологияЛитератураЛогикаМаркетингМатематикаМашиностроениеМедицинаМенеджментМеталлы и СваркаМеханикаМузыкаНаселениеОбразованиеОхрана безопасности жизниОхрана ТрудаПедагогикаПолитикаПравоПриборостроениеПрограммированиеПроизводствоПромышленностьПсихологияРадиоРегилияСвязьСоциологияСпортСтандартизацияСтроительствоТехнологииТорговляТуризмФизикаФизиологияФилософияФинансыХимияХозяйствоЦеннообразованиеЧерчениеЭкологияЭконометрикаЭкономикаЭлектроникаЮриспунденкция
|
Поиск причин
Предисловие
Случилось так, что однажды дома у меня (т.е. автора этой статьи) не было доступа к интернету. Почему так получилось – отдельный вопрос. Пришлось идти к соседям, потому что нужно было отправить очень важное письмо. На соседском компьютере я заметил одну неприятность – браузер Mozilla Firefox 10-й версии очень долго открывался. Он открывался так медленно на нетбуке, что за это время я успел выпить полкружки предложенного чая. После открытия мне пришлось еще и ждать, пока интерфейс почты Gmail соизволит отреагировать на мои действия, потому что браузер решил зависнуть. Как бы то ни было, письмо я отправил, спасибо за это отзывчивым людям. Но ситуация с браузером не давала мне покоя. Я задумался – почему браузер может долго открываться? В чем причина его медленной работы? Замечу – речь идет не о долгом открытии страниц, а о долгом открытии самого браузера, независимо от скорости интернета. Я провел небольшой опрос среди знакомых. Результат оказался грустным: у владельцев старых компьютеров и нетбуков браузер (неважно какой, версия тоже не особо важна) открывается секунд 30, если не больше. Причем люди считают нормой такое поведение и молча терпят. В принципе, подождать полминуты можно, но некоторых пользователей ПК, в том числе и меня, такое ожидание раздражает. На современных машинах в единичных случаях также бывает существенная задержка открытия браузера и зависания время от времени, но в целом благодаря гигагерцам и ядрам ситуация более радужная. Напрашивается два вопроса: почему браузер тормозит и как ускорить его работу? Примечание: тем, кто ищет рекомендации, надо прокрутить страницу ниже – ко второй главе статьи.
Почему это происходит?
Поиск причин
Все современные интернет-браузеры – сложные программные комплексы. В процессе запуска и работы браузера происходит много событий: сортировка баз данных, которые содержат историю посещенных сайтов, информацию о кешированных страницах (это страницы, картинки и другие объекты, которые мы уже загрузили из интернета и которые могут быстро загрузиться с жесткого диска вместо медленного скачивания из интернета), информацию о различных дополнениях и т.п. Также идет загрузка сторонних компонентов от других разработчиков, таких как Adobe Flash Player и Java. Существует утилита Process Monitor, которая может отследить активность программ. Благодаря ей я выяснил, что браузер Firefox на моем компьютере во время процесса запуска генерирует более 18 тысяч событий! Под событиями я подразумеваю открытие файлов, проверку работы интернета, просто проверку файлов на их наличие и много чего еще, что регистрирует Process Monitor. Браузер Google Chrome генерирует 34 тысячи событий при запуске, Opera – 5 тысяч, а Internet Explorer – 16 тысяч. Для сравнения – на моем компьютере во время запуска обычного Блокнота (notepad.exe) происходит 1198 событий.
Количество событий может варьироваться на разных компьютер в зависимости от версии операционной системы, установленных программ, поэтому принимать цифры за факты не стоит. Это ориентир, не больше. Логично, что действия, которые производит браузер, влияют на скорость его запуска. Внутреннее устройство влияет на стабильность и отзывчивость. Например, каждый браузер пытается ускорить свой запуск по-своему:
· Chrome старается как можно быстрей показать свое окно, в фоновом режиме продолжая подгружать дополнения и другие компоненты. Это позволяет открывать сайты до полной загрузки браузера, которая происходит спустя десяток секунд или даже через полминуты.
· Opera пошла по пути максимальной оптимизации – чем меньше открываемых файлов, тем быстрее. Этот подход максимально проявляет себя при быстром жестком диске.
· Mozilla Firefox ведет себя не лучшим образом – пока все компоненты не загрузятся, толком работать нельзя, хотя окно браузера может появиться раньше. Этот подход разработчики исправить не хотят или не могут. Все, что они обещают, так это к 14-й версии браузера устранить проблему слишком чрезмерного потребления оперативной памяти.
· Что происходит во время запуска Internet Explorer, мне не известно. Информации об этом мало. Судя по тому, что я увидел с помощью Process Monitor – браузер открывается так же, как и Opera, где упор идет на минимальное количество файловых операций, требуемых для запуска.
Независимо от того, каким образом браузеры пытаются ускорить (или замедлить – смотря как посмотреть) свое открытие, у них есть общие проблемы: время загрузки сторонних компонентов и баз данных с историей посещенных сайтов, введенных адресов и прочей информацией. Что касается собственно работы в браузере, здесь ситуация аналогичная – компоненты, установленные в браузер, словно тяжелый груз, из любого браузера делают неповоротливого монстра, обросшего ненужными функциями.
1 | 2 | 3 | 4 | Поиск по сайту:
|