У Chromium додали дві нові технології прискорення роботи з Javascript

Вже досить давно розробники з Chromium нічого не розповідали про те, як вони прискорюють роботу браузера. Нагадаємо, що в 2008 році Хром позиціонувався не тільки як максимально простий браузер, а й як найшвидший. З тих пір багато чого змінилося. Firefox і Internet Explorer підтягнулися, Opera перейшла на Chromium. Основні сучасні браузери вже майже не поступаються один одному, змагаючись на рівні відсотків. Але команда Chromium все ж намагається прискорити те, що ще можна. Наприклад, сьогодні ми розповімо про дві нові технології, які прискорюють роботу з Javascript у версіях 41 і 42.

Наприклад, сьогодні ми розповімо про дві нові технології, які прискорюють роботу з Javascript у версіях 41 і 42

Script streaming

Раніше робота з js-скриптами (які використовуються практично в кожному відвідуваному вами сайті) представляла з себе ланцюжок з декількох процесів. Перш за все, браузер завантажував скрипт з мережі. Після повного завантаження він приступав до аналізу (розбір, парсинг - називайте як хочете) скриптів, їх компіляції і запуску. На кожному етапі витрачається час. Зазвичай це мілісекунди, але якщо веб-додаток досить складне, то очікування може затягнутися.

У Chromium 41 розробники придумали помістити етап аналізу в паралельний потік так, щоб браузер міг почати розбиратися в скрипті ще до його повного завантаження з мережі. У ряді випадків це дозволило прискорити відкриття сторінок на 10%. Ефект особливо помітний при великих скриптах або повільному з'єднанні.

Code caching

Як ви могли вже здогадатися, друга оптимізація зачіпає кешування скомпільованої коду. Якщо користувач часто відкриває одну і ту ж сторінку зі скриптами, то логічно десь зберегти вже готовий для запуску код і тим самим пропустити перші три етапи при повторному відкритті.

Власне це і було зроблено в Chromium 42. Згідно з даними розробників, цей метод дозволив заощадити до 40% часу, що витрачається на процес компіляції. Причому це дозволило отримати виграш не тільки в швидкості, але і в споживанні акумулятора мобільного пристрою.

today 20.03.2015