На определённом этапе своей карьеры я задался вопросом: может ли Next.js работать в многопоточном режиме? Оказалось, что нет. Это побудило меня разобраться, как можно организовать многопоточную работу Next.js и насколько это оправдано для сайтов с высокой нагрузкой. СодержаниеКакую страницу будем нагружать?Скрипт для стресс-тестаКонфигурация компьютераСтресс-тест в однопотокеКак запустить многопоточность в NextJS?Стресс-тест в многопотокеРезультатыЗаключениеКакую страницу будем нагружать?Для т…
Поддержание чистого, эффективного и масштабируемого тестового кода становится всё более сложной задачей по мере увеличения сложности веб-приложений. Playwright, мощный фреймворк для end-to-end тестирования, предлагает решение через свою систему фикстур. Это руководство проведет вас через продвинутые техники использования фикстур в Playwright для создания надёжной и поддерживаемой тестовой архитектуры.Введение в фикстуры PlaywrightФикстуры в Playwright позволяют делиться данными или объектами ме…
Требования к быстрому и качественному созданию интерфейсов растут с каждым днем. Поэтому разработчики плавно отходят от написания вручную кода, который может быть сгенерирован автоматически. Мы перешли к автоматизации с таким инструментом, как Orval. Расскажем, как это было, поделимся примером кода и библиотеками (следите за ссылками в тексте).Почему мы отказались от ручной выборки данных?Правило нашей команды: если рутинные процессы могут быть успешно автоматизированы, мы обязательно так и сде…
В версии 2.1.3, помимо прочего, был введён новый функционал для улучшения производительности сайтов, использующих hmpl.js. Мемоизация запроса - это один из отличнейших способов оптимизации в программировании. «Что это и как оно работает?» - на эти вопросы я постараюсь ответить в данной статье.Кстати, все нововведения, связанные с языком шаблонов, вы можете найти в тематическом тг-канале.Понятие мемоизацииПрежде чем перейти к рассмотрению конкретного функционала, для начала рассмотрим данное по…
Привет, Хаброжители! Раскройте потенциал паттернов проектирования JavaScript. Найдите структурированные решения распространенных задач разработки, пригодные для многократного использования и повышающие масштабируемость, производительность и удобство сопровождения кода. Узнайте, как применение этих паттернов позволяет создавать более чистый и понятный код, способствует организации совместной работы в команде, сокращает количество ошибок и экономит время и силы.Автор дает исчерпывающее представ…
Привет! Я Дима, фронтенд-разработчик в Surf. Сегодня рассмотрим самую популярную библиотеку для фронтенда — React. Что было в React18? Давайте узнаем!React, разработанный Meta* (ранее Facebook*), остаётся одной из ведущих библиотек для создания пользовательских интерфейсов.В статье будут ссылки на документацию React, которые ведут на официальный сайт продукта, созданный компанией Meta*. Компания Meta* признана экстремистской организацией, ее деятельность на территории России запрещена. С каждым…
Друзья, приветствую!Сегодня я подготовил небольшую, расслабляющую статью, особенно в сравнении с предыдущими. Недавно я разрабатывал FullStack-приложение для небольшого лендинга, где одной из задач было привязать форму с сайта к Telegram-боту.Суть задачи:Пользователь вводит данные в форму на сайте, после чего эта информация отправляется заказчику через Telegram-бота. Данные отправляются в формате HTML, с полным набором информации. Всё это нужно было реализовать на чистом JavaScript + HTML + CSS…
Большая новость, о которой на прошлой неделе намекнул в сети X Evan YouEvan создал компанию Voidzero Inc, которая будет делать "an open-source, high-performance, and unified development toolchain for the JavaScript ecosystem" (примерно как сейчас bun или deno только без js движка), и в первом раунде привлек $4.6 млн. за нее (то есть продал инвесторам процентов 10-20 её акций за эту сумму)Это очень хорошая новость. Vue давно перерос уровень любительского опен-сорса, и ему нужен бэкап в ф…
Сегодня было анонсировано следующее поколение инструментария для JavaScript от автора Vue и Vite. В рамках начального финансирования было привлечено $4.6 миллиона, при этом основными инвесторами стали Accel и Amplify. В свете этого анонса важно понять контекст, в котором он происходит, и значимость изменений, которые он приносит.Пятнадцать лет назад JavaScript был в основном языком сценариев для браузеров. Сегодня он стал самым широко используемым языком, применяемым для создания веб-приложений…