⚡️Примитивы синхронизации в JavaScript
В этой статье автор расскажет, почему все основные среды исполнения JavaScript поддерживают доступ к потокам, и почему не получится совместно использовать один JavaScript-объект в нескольких потоках, а также вы узнаете как можно задачи с математическими вычислениями или обработкой графики выносить в отдельные потоки.
Читать...
В этой статье автор расскажет, почему все основные среды исполнения JavaScript поддерживают доступ к потокам, и почему не получится совместно использовать один JavaScript-объект в нескольких потоках, а также вы узнаете как можно задачи с математическими вычислениями или обработкой графики выносить в отдельные потоки.
Читать...
👍2
🚀Сравнительный анализ производительности популярных JS-фреймворков — Express.js, Koa.js и Fastify
В этой статье автор расскажет, какой же бэкенд-фреймворк лучше использовать, и почему Express.js — один из самых известных фреймворков на основе Node.js, а также вы узнаете Koa.js более современный, минималистичный, гибкий и выразительный с более надежной основой для серверных служб чем в Express.js.
Читать...
В этой статье автор расскажет, какой же бэкенд-фреймворк лучше использовать, и почему Express.js — один из самых известных фреймворков на основе Node.js, а также вы узнаете Koa.js более современный, минималистичный, гибкий и выразительный с более надежной основой для серверных служб чем в Express.js.
Читать...
👍3
👤Что нужно знать, перед тем как использовать Prisma у себя в проекте
В этой статье автор расскажет, как Prisma умеет генерировать автоматические миграции на основе изменений, которые произошли в схеме, и почему результаты примененных миграций записываются в специальную табличку, а также вы узнаете как можно осуществлять squash миграций, если их накопилось слишком много.
Читать...
В этой статье автор расскажет, как Prisma умеет генерировать автоматические миграции на основе изменений, которые произошли в схеме, и почему результаты примененных миграций записываются в специальную табличку, а также вы узнаете как можно осуществлять squash миграций, если их накопилось слишком много.
Читать...
👍3
⚡️Node.js: разрабатываем сборщик модулей
В этой статье вы узнаете, как работают сборщики модулей (module bundlers) JavaScript типа Webpack или Parcel, и как разработать простой сборщик модулей на Node.js, который будет компилировать все модули приложения в один минифицированный файл с кодом, соответствующим стандарту ES5.
Читать...
В этой статье вы узнаете, как работают сборщики модулей (module bundlers) JavaScript типа Webpack или Parcel, и как разработать простой сборщик модулей на Node.js, который будет компилировать все модули приложения в один минифицированный файл с кодом, соответствующим стандарту ES5.
Читать...
👍2
😍Создаем Discord-бота с помощью Node.js
В этой статье автор расскажет, как создать Discord-бота с нуля, используя Node.js и библиотеку Discord.js, которая позволяет пользователям напрямую взаимодействовать с Discord API, и как настроить профиль для Discord-бота, получить для него токены аутентификации и реализовать в боте возможность обработки команд с аргументами от пользователей.
Читать...
В этой статье автор расскажет, как создать Discord-бота с нуля, используя Node.js и библиотеку Discord.js, которая позволяет пользователям напрямую взаимодействовать с Discord API, и как настроить профиль для Discord-бота, получить для него токены аутентификации и реализовать в боте возможность обработки команд с аргументами от пользователей.
Читать...
👍3
🤔Захват флага: Практика уязвимости веб-приложений на Node.js (часть 1)
В этой статье автор расскажет, почему некоторые разработчики обычно не обращают внимания на информацию из npm audit, и как постоянная проверка и обновление наших зависимостей помогут в создании достаточно безопасного приложения.
Читать...
В этой статье автор расскажет, почему некоторые разработчики обычно не обращают внимания на информацию из npm audit, и как постоянная проверка и обновление наших зависимостей помогут в создании достаточно безопасного приложения.
Читать...
👍5
Приручаем многопоточность в Node.js
В прошлых частях цикла мы:
👉 рассмотрели базовые концепты работы с многопоточностью в JavaScript на примере среды Node.js;
👉 научились формировать общую очередь и каналы обмена данными и сигналами, чтобы более эффективно управлять загрузкой потоков;
👉 использовали разделяемую память и Atomics-операции как самое быстрое средство обмена большими блоками данных;
👉 создали отдельный поток-координатор, чтобы устранить негативное влияние синхронного кода в основном потоке исполнения на загрузку потоков вспомогательных.
В сегодняшней, заключительной, части я продемонстрирую, как все эти механики вместе позволяют сделать эффективный микросервис, автоматически подстраивающийся под изменения входящей нагрузки.
Читать...
В прошлых частях цикла мы:
👉 рассмотрели базовые концепты работы с многопоточностью в JavaScript на примере среды Node.js;
👉 научились формировать общую очередь и каналы обмена данными и сигналами, чтобы более эффективно управлять загрузкой потоков;
👉 использовали разделяемую память и Atomics-операции как самое быстрое средство обмена большими блоками данных;
👉 создали отдельный поток-координатор, чтобы устранить негативное влияние синхронного кода в основном потоке исполнения на загрузку потоков вспомогательных.
В сегодняшней, заключительной, части я продемонстрирую, как все эти механики вместе позволяют сделать эффективный микросервис, автоматически подстраивающийся под изменения входящей нагрузки.
Читать...
👍6