Category Archives: Optimization

Настройка свопа и управление кэшами в Ubuntu

http://fx-files.ru/archives/704

Для сохранения настройки после перезагрузки внесите в конец файла /etc/sysctl.conf следующую строку:

Чтобы сразу применить настройку:

AngularJS: $watch за объектами

Чтобы не вызывалась лишний раз функция, нужно добавить еще один параметр true в $watch:

Но он иногда запускает обработчик, поэтому можно сделать внутри дополнительную проверку:

Google Web Tracing Framework

https://chrome.google.com/webstore/detail/web-tracing-framework/gmdhhnlkjmknaopofnadmoamhmnlicme?hl=ru

Dirty checking в AngularJS и производительность

Misko Havery рассуждает о производительности data-binding в AngularJS: http://stackoverflow.com/questions/9682092/databinding-in-angularjs/9693933#9693933

Прототипы быстрее фабричных фунций

Dan Tao : The prototype is your friend (if you care about perf)  — https://coderwall.com/p/jj6fwa Очередная статья о том, почему использование прототипов лучше при больших нагрузках. Но лично мне ближе фабрики. И узким местом, требующим внимания, я такие вещи не считаю.

requestAnimationFrame

requestAnimationFrame удобен для группировки изменений DOM-структуры. В том числе между различными модулями. Позволяет избежать «layout thrashing». Работает как callback. Описание — https://developer.mozilla.org/ru/docs/DOM/window.requestAnimationFrame Пример использования и библиотека-обёртка — http://wilsonpage.co.uk/preventing-layout-thrashing/

Инструменты для автоматической оптимизации картинок

http://addyosmani.com/blog/image-optimization-tools/ — большая подборка от Addy Osmani. Задания для grunt, отдельные приложения для png, jpeg, gif и svg.

Логирование клентских ошибок через сервис

https://www.bugsense.com — дают скрипт (http://www.bugsense.com/releases/html5/1.1/download) и потом можно логировать разные клиентские ошибки (более подробное описание от авторов). Единственный минус — очень платные. Мобильные друзья используют другой сервис — http://try.crashlytics.com/, но для web решения пока нет. Вообще-то я давно писал про то, как можно логировать ошибки (https://blog.bullgare.com/2012/03/%D0%BB%D0%BE%D0%B3%D0%B8%D1%80%D0%BE%D0%B2%D0%B0%D0%BD%D0%B8%D0%B5-js-%D0%BE%D1%88%D0%B8%D0%B1%D0%BE%D0%BA-%D0%BD%D0%B0-%D1%81%D0%B5%D1%80%D0%B2%D0%B5%D1%80%D0%B5/), но иногда неохота городить огород на серверной стороне, а …

Read more

Методы тестирования мобильных приложений

http://webuild.envato.com/blog/techniques-for-mobile-and-responsive-cross-browser-testing/

Оптимизация загрузки сайта для мобильных устройств

http://youtu.be/YV1nKLWoARQ Слайды:https://docs.google.com/presentation/d/1IRHyU7_crIiCjl0Gvue0WY3eY_eYvFQvSfwQouW9368/present Основные вещи: В идеале надо стараться уложиться в 14 кБ для отрисовки первичной страницы (хотя бы для основного макета со стилями). При этом стили для этого сделать встраиваемыми, т.к. для избежания FOUC (flash of unstyled content) браузер ждет догрузки css и только после этого начинает отрисовывать страницу. Javascript стараться грузить уже после отрисовки …

Read more