Как повысить производительность JavaScript в браузерных приложениях, таких как Chrome

Apple перенесла движок Nitro Javascript на мобильный Safari в iOS 4.3 еще в 2012 году, который загружает JavaScript в два раза быстрее. Однако Apple не сделала Nitro доступной для всей системы в iOS из-за безопасности.

Основная причина улучшения производительности JavaScript Nitro по сравнению с предыдущим механизмом JavaScript WebKit – это использование JIT (Just-In-Time) компиляции. JIT требует возможности помечать страницы памяти в ОЗУ как исполняемые. Однако из соображений безопасности iOS не позволяет помечать страницы в памяти как исполняемые. Apple сделала исключение из политики только для мобильного Safari.
Это означает, что сторонние приложения, включая браузеры, такие как Chrome и веб-клипы на главном экране, которые используют элемент управления UIWebView, не имеют доступа к более быстрому движку Nitro JavaScript. Таким образом, в этих сторонних приложениях веб-страницы загружаются намного медленнее, чем в Safari. Иногда загрузка занимает так много времени, что я просто в отчаянии открываю ссылку в мобильном Safari.

Если вы взломали свое устройство iOS и разочарованы медленным временем загрузки, то есть простой способ включить движок Nitro JavaScript. Все, что вам нужно сделать, это установить твик под названием Nitrous. Он доступен в Cydia по цене 0,99 доллара США и совместим с iOS 5.x, iOS 6.x и iOS 7.x.

Как вы можете видеть на скриншотах ниже, на основе тестов скорости, проведенных на Speed-Battle.com, после установки твика Nitrous производительность взлома значительно улучшилась (большее число = лучшая производительность).

закись азота
Тест скорости: Safari (слева), Chrome без закиси азота (в центре), Chrome с закисью (справа)
Так когда же Apple сделает Nitro доступным для всей системы iOS? Это никто не догадывается, но все еще в разработке WebKit2 framework может быть решением, поскольку он «спроектирован таким образом, что компоненты, обеспечивающие веб-рендеринг, чисто из окружающего их интерфейса или оболочки приложения, создают ситуацию, когда веб-контент (JavaScript, HTML, макет и т. д.) живет в отдельном процессе от пользовательский интерфейс приложения ».
А пока вы можете использовать Nitrous для включения движка Nitro JavaScript в сторонних приложениях на основе UIWebView и веб-клипах на главном экране. Вы также можете попробовать iWebBoast от разработчика iRealSMS, который предлагает аналогичные функции и доступен по той же цене, что и Nitrous.

Дайте мне знать, как это происходит, в комментариях.

–>

Похожие записи

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *