Category Archives: Optimization
Книга про сетевое взаимодействие и про решение проблем в Google Chrome
http://www.igvita.com/posa/high-performance-networking-in-google-chrome/
Библиотека для более отзывчивой работы с мобильными устройствами
FastClick. Убирает задержку в 300мс для прокидывания события «click». https://github.com/ftlabs/fastclick
Библиотека для Node.js для нереально больших нагрузок
https://hacks.mozilla.org/2013/01/building-a-node-js-server-that-wont-melt-a-node-js-holiday-season-part-5/ Использование:
1 2 3 4 5 6 |
var toobusy = require('toobusy'); app.use(function(req, res, next) { if (toobusy()) res.send(503, "I'm busy right now, sorry."); else next(); }); |
Т.е. при большой занятости показывает всем 503 (в этом примере), от чего проку конечно мало. Но делает очень быстро, а в реальных условиях можно отдавать страницу-заглушку, практически не нагружая сервер. Интересно то, как он меряет — меряет очередь заданий во внутреннем цикле Node.js
Google Chrome DevTools Grab bag (Breakpoint Episode 5)
В этом видео рассказывается о новых возможностях консоли Chrome: Тестирование мобильной версии сайта с помощью подмены User Agent, метрик устройства, эмуляции touch-событий и ориентации устройства. Подмена media type, чтобы посмотреть как выглядит версия сайта, к примеру, при выводе на печать. (09:16) CSS Regions (патч от Adobe) (11:11) Подсветка селектора (14:53) Возможность проинспектировать локальную область видимости …
Оптимизация трафика клиент-сервер на примере WebSocket
С использованием node.js http://buildnewgames.com/optimizing-websockets-bandwidth/
Анимация css-ом
Все-таки лучше делать это translate-ом. Из-за обработки через WebGL (т.е. мощностями видеокарты) и субпиксельности анимации (нет «рывков»). http://paulirish.com/2012/why-moving-elements-with-translate-is-better-than-posabs-topleft/ http://css-tricks.com/tale-of-animation-performance/
Пример использования WebSocket
На клиенте: Socket.IO (http://socket.io/), альтернативы — SockJS (https://github.com/sockjs/sockjs-client) и Beseda (https://github.com/GeometriaLab/Beseda). На сервере: php → pubsub-каналы redis → node.js. Вот оригинал статьи: http://habrahabr.ru/post/162301/
Grunt: система сборки для фронтенд-разработчиков
http://gruntjs.com/ Ставится как пакет к node, через npm. Конфиги пишутся на javascript.
W3C предложил спецификацию для Push API
Вот что это. Эта спецификация определяет “Push API” для доступа web-приложений к данным от сервера, которые назовём «Push messages», полученным через «Push services». «Push services» — это способ для отправки сервером сообщений на сторону клиента, вне зависимости от того, активна вкладка с приложением в данный момент или нет. Надеюсь, это позволит избегать множества костылей при …
Выступление Jan Jongboom из Cloud9 — «The Architect Way» на YAC-2012
http://events.yandex.ru/talks/300/ Презентация в pdf — http://download.yandex.ru/company/experience/yac2012/jongboom_yac_2012.pdf