Клиентская оптимизация

  • Хабрахабр

    [Перевод] Продуманные запросы: стратегии кэширования в век PWA

    Давным-давно мы, в деле кэширования, всецело полагались на браузеры. Разработчики в те дни почти никак не могли на это повлиять. Но потом появились прогрессивные веб-приложения (Progressive Web App, PWA), сервис-воркеры, API Cache. Внезапно случилось так, что в руках программиста оказались широкие полномочия, власть над тем, что попадает в кэш, и над тем, как оно туда попадает. Теперь мы можем кэшировать…

    Подробнее »
  • Хабрахабр

    JavaScript Meetup SuperJob: видеоотчёт

    10 октября мы провели JavaScript Meetup SuperJob. Рассказываем, что обсуждали участники, делимся видео и презентациями. Александр Кухта, ведущий разработчик SuperJob, выступил с темой « Опыт работы с JSON:API на клиенте». Александр представляет команду «Платформа», которая отвечает за архитектуру и производительность javascript-приложения компании. Далее он рассказал о том, как ребята хранят около 1500 сырых сущностей на клиенте, как работают с ними…

    Подробнее »
  • Хабрахабр

    [Перевод] Ускорение instagram.com. Часть 3

    Сегодня публикуем перевод третьей части серии материалов об ускорении instagram.com. В первой части мы говорили о предварительной загрузке данных, во второй — об отправке данных клиенту по инициативе сервера. Здесь речь пойдёт о кэшировании. Работа начинается с кэша Мы уже отправляем данные клиентскому приложению, делая это в ходе загрузки страницы настолько рано, насколько возможно. Это значит, что единственным более быстрым…

    Подробнее »
  • Хабрахабр

    [Перевод] Data-Oriented Design (или почему, используя ООП, вы, возможно, стреляете себе в ногу)

    Представьте себе такую картину: близится конец цикла разработки, ваша игра едва ползает, но в профайлере вы не можете найти очевидных проблемных мест. Кто же виноват? Паттерны произвольного доступа к памяти и постоянные промахи кеша. Пытаясь повысить производительность, вы пробуете распараллелить части кода, но это стоит героических усилий, и в конечном итоге из-за всей синхронизации, которую пришлось добавить, ускорение едва заметно.…

    Подробнее »
  • Хабрахабр

    Анимационный граф состояний

    Привет! Мы тут в Playrix решили сделать свой Unity3D. А там есть Animator. В этой статье я  расскажу, как мы сделали его у себя и как он работает. Когда мы начинали проектировать архитектуру своих анимационных графов, мы, конечно же, смотрели на другие аналоги, в частности на Animator от Unity. Однако мы хотели сделать более универсальное решение. В отличие от того…

    Подробнее »
  • Хабрахабр

    [Не] используйте CDN

    Практически в любой статье или инструменте для оптимизации скорости сайтов есть скромный пункт «используйте CDN». Вообще, CDN – это content delivery network или сеть доставки контента. Мы в компании «Метод Лаб» часто встречаемся с вопросами клиентов по этой теме, некоторые самостоятельно включают себе CDN. Цель этой статьи разобраться, что может дать CDN с точки зрения скорости загрузки сайта, какие проблемы…

    Подробнее »
  • Хабрахабр

    [Перевод] Оптимизация загрузки JavaScript-кода в Wikipedia

    Автор материала, перевод которого мы сегодня публикуем, говорит, что он, в середине сентября 2019, наконец-то завершил проект, которым занимался уже год. Целью этого проекта было сокращение размеров манифеста, необходимого для инициализации асинхронного JavaScript-конвейера Wikipedia. А именно, размер манифеста составлял 36 Кб. Его нужно было уместить в менее чем 28 Кб, что соответствует двум 14-килобайтным фрагментам последовательности интернет-пакетов. 3 терабайт трафика.…

    Подробнее »
  • Хабрахабр

    [Перевод] Уменьшение размеров бандлов с помощью Webpack Analyzer и React Lazy/Suspense

    По мере того, как растёт сложность клиентских приложений, размеры их бандлов становятся всё больше и больше. В этой ситуации сильнее всего страдают люди, вынужденные, по разным причинам, пользоваться медленными интернет-соединениями. При этом с каждым днём всё становится только хуже. Он хочет рассказать о том, как смог уменьшить размер одного бандла примерно на 80%, используя Webpack Analyzer и React Lazy/Suspense. Автор…

    Подробнее »
  • Хабрахабр

    [Перевод] Структуры данных для программистов игр: bulk data

    Любому программисту будет полезно понимание различных структур данных и способов анализа их производительности. Но на практике мне ни разу не пригождались АВЛ-деревья, красно-чёрные деревья, префиксные деревья, списки с пропусками, и т.д. Некоторые структуры данных я использую только для одного конкретного алгоритма и ни для чего больше (например, кучи для реализации очереди с приоритетом в алгоритме поиска пути A*). Чаще всего…

    Подробнее »
  • Хабрахабр

    [Перевод] Ускорение instagram.com. Часть 2

    Сегодня мы представляем вашему вниманию перевод второго материала из серии, посвящённой оптимизации instagram.com. Здесь речь пойдёт об улучшении механизма заблаговременного выполнения GraphQL-запросов и о повышении эффективности передачи HTML-данных клиенту. → Читать, затаив дыхание, первую часть Отправка данных клиенту по инициативе сервера с использованием технологии прогрессивной загрузки HTML В первой части мы говорили о том, как, используя механизмы предварительной загрузки, начинать…

    Подробнее »


Кнопка «Наверх»
Закрыть