Node.js: разрабатываем сборщик модулей
Вам когда-нибудь хотелось узнать, как работают сборщики модулей (module bundlers) JavaScript типа Webpack или Parcel, что называется, под капотом. Если хотелось, тогда эта статья для вас.
В данном туториале мы разработаем простой сборщик модулей на Node.js, который будет компилировать все модули приложения в один минифицированный файл с кодом, соответствующим стандарту ES5.
✍️ @nodejs_lib
Вам когда-нибудь хотелось узнать, как работают сборщики модулей (module bundlers) JavaScript типа Webpack или Parcel, что называется, под капотом. Если хотелось, тогда эта статья для вас.
В данном туториале мы разработаем простой сборщик модулей на Node.js, который будет компилировать все модули приложения в один минифицированный файл с кодом, соответствующим стандарту ES5.
✍️ @nodejs_lib
Хабр
Node.js: разрабатываем сборщик модулей
Привет, друзья! Вам когда-нибудь хотелось узнать, как работают сборщики модулей (module bundlers) JavaScript типа Webpack или Parcel , что называется, под капотом. Если хотелось, тогда эта статья для...
Node.js: разрабатываем бота для Telegram
В данном туториале мы разработаем простого бота для Telegram. Сначала зарегистрируем и кастомизируем бота с помощью BotFather, затем напишем для него сервер на Express, развернем сервер на Heroku и подключим бота к серверу с помощью веб-хука.
✍️ @nodejs_lib
В данном туториале мы разработаем простого бота для Telegram. Сначала зарегистрируем и кастомизируем бота с помощью BotFather, затем напишем для него сервер на Express, развернем сервер на Heroku и подключим бота к серверу с помощью веб-хука.
✍️ @nodejs_lib
👍2
Память в браузерах и в Node.js: ограничения, утечки и нестандартные оптимизации
Интро: почему я написал эту статью
Меня зовут Виктор, я разрабатываю страницу результатов поиска Яндекса. Несмотря на внешнюю простоту, поисковая выдача — сложная штука: на каждый запрос генерируется своя уникальная страница, на которой в зависимости от запроса может присутствовать блок Картинок, Карты, Переводчик, видеоплеер и многие другие компоненты. Все они должны запускаться и работать в памяти обычных бюджетных телефонов, которые использует большинство наших пользователей. Браузерам должно хватать ресурсов, чтобы пользователь не видел вот такого.
✍️ @nodejs_lib
Интро: почему я написал эту статью
Меня зовут Виктор, я разрабатываю страницу результатов поиска Яндекса. Несмотря на внешнюю простоту, поисковая выдача — сложная штука: на каждый запрос генерируется своя уникальная страница, на которой в зависимости от запроса может присутствовать блок Картинок, Карты, Переводчик, видеоплеер и многие другие компоненты. Все они должны запускаться и работать в памяти обычных бюджетных телефонов, которые использует большинство наших пользователей. Браузерам должно хватать ресурсов, чтобы пользователь не видел вот такого.
✍️ @nodejs_lib
👍1
Как упаковать Node.js приложение в Docker контейнер за 3 минуты?
В этой статье мы познакомимся с простейшим способом упаковки своeго собственного приложения в Docker контейнер.
✍️ @nodejs_lib
В этой статье мы познакомимся с простейшим способом упаковки своeго собственного приложения в Docker контейнер.
✍️ @nodejs_lib
👍2
Асинхронность в Node.js
Асинхронность представляет возможность одновременно выполнять сразу несколько задач. Асинхронность играет большую роль в Node.js.
Например, допустим в файле приложения app.js у нас расположен следующий код:
Это стандартный синхронный код, все вызовы здесь выполняются последовательно, что мы можем увидеть, если мы запустим приложение:
✍️ @nodejs_lib
Асинхронность представляет возможность одновременно выполнять сразу несколько задач. Асинхронность играет большую роль в Node.js.
Например, допустим в файле приложения app.js у нас расположен следующий код:
function displaySync(data) {
console.log(data)
}
console.log('Начало работы программы')
displaySync('Обработка данных...')
console.log('Завершение работы программы')
Это стандартный синхронный код, все вызовы здесь выполняются последовательно, что мы можем увидеть, если мы запустим приложение:
✍️ @nodejs_lib
👍3
Distributed Systems with Node.js.pdf
9.8 MB
Distributed Systems with Node.js (2020)
Автор: Thomas Hunter II Eng
Многие компании, от стартапов до компаний из списка Fortune 500, используют Node.js для создания эффективных бэкендов. А инженеры любят Node.js за доступный API и знакомый синтаксис. В этом практическом руководстве автор доказывает, что Node.js настолько же хорош, как и традиционные платформы, для создания масштабируемых и отказоустойчивых сервисов.
Во время чтения книги вы:
✔️Узнаете, какой протокол выбрать в зависимости от ситуации;
✔️Настроите контейнеры приложения для использования в производстве;
✔️Отследите ошибки в настройках, чтобы определить, какой сервис неисправен;
✔️Упростите код приложения и повысьте производительность, переложив работу на обратный прокси;
✔️Создадите информационные панели для мониторинга работоспособности и пропускной способности сервиса;
✔️Узнаете, почему требуется так много различных инструментов при работе в корпоративной среде.
✍️ @nodejs_lib
Автор: Thomas Hunter II Eng
Многие компании, от стартапов до компаний из списка Fortune 500, используют Node.js для создания эффективных бэкендов. А инженеры любят Node.js за доступный API и знакомый синтаксис. В этом практическом руководстве автор доказывает, что Node.js настолько же хорош, как и традиционные платформы, для создания масштабируемых и отказоустойчивых сервисов.
Во время чтения книги вы:
✔️Узнаете, какой протокол выбрать в зависимости от ситуации;
✔️Настроите контейнеры приложения для использования в производстве;
✔️Отследите ошибки в настройках, чтобы определить, какой сервис неисправен;
✔️Упростите код приложения и повысьте производительность, переложив работу на обратный прокси;
✔️Создадите информационные панели для мониторинга работоспособности и пропускной способности сервиса;
✔️Узнаете, почему требуется так много различных инструментов при работе в корпоративной среде.
✍️ @nodejs_lib
👍3
Как мы преобразовали нашу библиотеку Node.js в Deno (с помощью Deno)
https://www.edgedb.com/blog/how-we-converted-our-node-js-library-to-deno-using-deno
✍️ @nodejs_lib
https://www.edgedb.com/blog/how-we-converted-our-node-js-library-to-deno-using-deno
✍️ @nodejs_lib
👍1
Создание многопользовательской игры с использованием Socket. io при помощи NodeJS и React
Это руководство детально объясняет, как ПРАВИЛЬНО создать пошаговую многопользовательскую игру при помощи Socket. io и React. Здесь будет рассмотрено как создание серверной части проекта при помощи ExpressJS, так и клиентской с помощью ReactJS.
✍️ @nodejs_lib
Это руководство детально объясняет, как ПРАВИЛЬНО создать пошаговую многопользовательскую игру при помощи Socket. io и React. Здесь будет рассмотрено как создание серверной части проекта при помощи ExpressJS, так и клиентской с помощью ReactJS.
✍️ @nodejs_lib
👍2
Media is too big
VIEW IN TELEGRAM
Курс по NodeJS
Урок 1 Установка и запуск
Урок 2 Модули
Урок 3 Пакетный менеджер NPM
Урок 4 Package json
Урок 5 Глобальные пакеты
Урок 6 Встроенные модули
Урок 7 Работа с файлами
Урок 8 Создание веб сервера Часть 1
Урок 9 Создание веб сервера Часть 2
Урок 10 Чтение параметров из консоли
https://www.youtube.com/playlist?list=PLHaJmpMCM3agKEb8d63dSncujU9X3xRpQ
✍️ @nodejs_lib
Урок 1 Установка и запуск
Урок 2 Модули
Урок 3 Пакетный менеджер NPM
Урок 4 Package json
Урок 5 Глобальные пакеты
Урок 6 Встроенные модули
Урок 7 Работа с файлами
Урок 8 Создание веб сервера Часть 1
Урок 9 Создание веб сервера Часть 2
Урок 10 Чтение параметров из консоли
https://www.youtube.com/playlist?list=PLHaJmpMCM3agKEb8d63dSncujU9X3xRpQ
✍️ @nodejs_lib
👍6
События в Node.js
Подавляющее большинство функционала Node.js применяет асинхронную событийную архитектуру, которая использует специальные объекты - эмиттеры для генерации различных событий, которые обрабатываются специальными функциями - обработчиками или слушателями событий. Все объекты, которые генерируют события, представляют экземпляры класса EventEmitter. Далее
✍️ @nodejs_lib
Подавляющее большинство функционала Node.js применяет асинхронную событийную архитектуру, которая использует специальные объекты - эмиттеры для генерации различных событий, которые обрабатываются специальными функциями - обработчиками или слушателями событий. Все объекты, которые генерируют события, представляют экземпляры класса EventEmitter. Далее
✍️ @nodejs_lib
👍2
Как мы обрабатываем локальную и глобальную область видимости в Node.js?
В отличие от клиентского JavaScript, в Node.js переменные, объявленные с помощью var с максимальной областью видимости, не являются глобальными; они являются локальными по отношению к модулю, в котором находятся. В браузере у нас есть доступ к объекту window, в котором находятся глобальные переменные, и в Node.js есть объект для этого, называемый global.
✍️ @nodejs_lib
В отличие от клиентского JavaScript, в Node.js переменные, объявленные с помощью var с максимальной областью видимости, не являются глобальными; они являются локальными по отношению к модулю, в котором находятся. В браузере у нас есть доступ к объекту window, в котором находятся глобальные переменные, и в Node.js есть объект для этого, называемый global.
✍️ @nodejs_lib
👍4
Подборка лучших фреймворков Node.js
Node.js – популярная программная платформа с открытым исходным кодом, превращающая JavaScript из узкоспециализированного инструмента для веба в универсальный язык программирования для создания кросс-платформенных приложений. В небольшом обзоре рассмотрим написанные для этой платформы фреймворки.
✍️ @nodejs_lib
Node.js – популярная программная платформа с открытым исходным кодом, превращающая JavaScript из узкоспециализированного инструмента для веба в универсальный язык программирования для создания кросс-платформенных приложений. В небольшом обзоре рассмотрим написанные для этой платформы фреймворки.
✍️ @nodejs_lib
👍2
Разбираем Node.js. Как свойство main в package.json определяет точку входа
Всем известно, что зависимости вашего проекта установлены в папке node_modules. Но когда вы делаете require('lodash'), как Node.js узнает, какой файл загружать при загрузке модуля? Далее
Eng версия
✍️ @nodejs_lib
Всем известно, что зависимости вашего проекта установлены в папке node_modules. Но когда вы делаете require('lodash'), как Node.js узнает, какой файл загружать при загрузке модуля? Далее
Eng версия
✍️ @nodejs_lib
👍1
Media is too big
VIEW IN TELEGRAM
Node JS фундаментальный курс от А до Я. Node.js Теория и практика
Node js курс. В этом ролике мы разберем основные теоретические и практические моменты связанные с node js. Сделаем небольшой фреймворк на node js. Научимся работать с базами данных.
00:00 ➝ Введение
02:00 ➝ Установка node js. Информация про npm
06:16 ➝ Теория. Что такое node js, v8, libuv
14:00 ➝ Асинхронная модель. Шаблон реактор. Многопоточность, неблокирующий\блокирующий ввод вывод. Event loop в node js
33:11 ➝ Практика. process. Переменные окружения
38:50 ➝ Path, URL
44:07 ➝ Файловая система. Работа с файлами. CRUD
59:00 ➝ Операционная система, модуль cluster
01:04:50 ➝ События. Модуль events, EventEmitter
01:09:00 ➝ Стримы. Readable, writable streams
01:17:30 ➝ HTTP. Основы. Создание простого сервера.
01:22:00 ➝ Создание своего фреймворка по типу express
01:51:00 ➝ Работа с базой данных
01:57:23 ➝ ПЛАН на дальнейшее обучение
✍️ @nodejs_lib
Node js курс. В этом ролике мы разберем основные теоретические и практические моменты связанные с node js. Сделаем небольшой фреймворк на node js. Научимся работать с базами данных.
00:00 ➝ Введение
02:00 ➝ Установка node js. Информация про npm
06:16 ➝ Теория. Что такое node js, v8, libuv
14:00 ➝ Асинхронная модель. Шаблон реактор. Многопоточность, неблокирующий\блокирующий ввод вывод. Event loop в node js
33:11 ➝ Практика. process. Переменные окружения
38:50 ➝ Path, URL
44:07 ➝ Файловая система. Работа с файлами. CRUD
59:00 ➝ Операционная система, модуль cluster
01:04:50 ➝ События. Модуль events, EventEmitter
01:09:00 ➝ Стримы. Readable, writable streams
01:17:30 ➝ HTTP. Основы. Создание простого сервера.
01:22:00 ➝ Создание своего фреймворка по типу express
01:51:00 ➝ Работа с базой данных
01:57:23 ➝ ПЛАН на дальнейшее обучение
✍️ @nodejs_lib
👍3👎1
Bethany Griggs_ - Node Cookbook (2020).pdf
13.8 MB
Node Cookbook
Автор: Bethany Griggs (2020)
Node.js - ключевая технология для создания веб-приложений и инструментов, позволяющая разрабатывать все приложение на одном языке. Это четвертое издание Node Cookbook недавно было обновлено, чтобы успеть за последними фичами Node.js и эволюцией экосистемы фреймворка.
Во время чтения книги вы:
✔️Изучите модель асинхронного программирования на Node.js;
✔️Создадите простые приложения с Node.js с помощью модулей и веб-фреймворков;
✔️Разработаете простые веб-приложения с использованием веб-фреймворков, таких как Fastify и Express;
✔️Ознакомитесь с советами по тестированию, оптимизации и защите ваших веб-приложений;
✔️Изучите создание и развертывание микросервисов с Node.js;
✔️Научитесь отлаживать и находить проблемы в ваших приложениях.
✍️ @nodejs_lib
Автор: Bethany Griggs (2020)
Node.js - ключевая технология для создания веб-приложений и инструментов, позволяющая разрабатывать все приложение на одном языке. Это четвертое издание Node Cookbook недавно было обновлено, чтобы успеть за последними фичами Node.js и эволюцией экосистемы фреймворка.
Во время чтения книги вы:
✔️Изучите модель асинхронного программирования на Node.js;
✔️Создадите простые приложения с Node.js с помощью модулей и веб-фреймворков;
✔️Разработаете простые веб-приложения с использованием веб-фреймворков, таких как Fastify и Express;
✔️Ознакомитесь с советами по тестированию, оптимизации и защите ваших веб-приложений;
✔️Изучите создание и развертывание микросервисов с Node.js;
✔️Научитесь отлаживать и находить проблемы в ваших приложениях.
✍️ @nodejs_lib
👍5
Implementing Microservices in NodeJS
https://frontegg.com/blog/implementing-microservices-in-nodejs
✍️ @nodejs_lib
https://frontegg.com/blog/implementing-microservices-in-nodejs
✍️ @nodejs_lib
👍2
10 советов, как ускорить работу приложения Node.js
Node.js извлек выгоду из своих событийно-управляемых и асинхронных функций и уже работает быстро. Однако в современных сетях просто быть быстрым недостаточно. Если вы планируете использовать Node.js для разработки своего следующего веб-приложения, вам следует сделать все, чтобы ваше приложение было быстрее и чрезвычайно быстрым. В этой статье представлены 10 статей, которые могут значительно улучшить навыки работы с Node-приложением после проверки. Ничего особенного, давайте рассмотрим их по очереди.
✍️ @nodejs_lib
Node.js извлек выгоду из своих событийно-управляемых и асинхронных функций и уже работает быстро. Однако в современных сетях просто быть быстрым недостаточно. Если вы планируете использовать Node.js для разработки своего следующего веб-приложения, вам следует сделать все, чтобы ваше приложение было быстрее и чрезвычайно быстрым. В этой статье представлены 10 статей, которые могут значительно улучшить навыки работы с Node-приложением после проверки. Ничего особенного, давайте рассмотрим их по очереди.
✍️ @nodejs_lib
Telegraph
10 советов, как ускорить работу приложения Node.js
Node.js извлек выгоду из своих событийно-управляемых и асинхронных функций и уже работает быстро. Однако в современных сетях просто быть быстрым недостаточно. Если вы планируете использовать Node.js для разработки своего следующего веб-приложения, вам следует…
👍2
6 уроков, извлечённых из опыта оптимизации производительности Node.js-сервиса
В компании Klarna прилагают большие усилия к тому, чтобы помочь разработчикам в создании высококачественных и безопасных сервисов. Один из инструментов, который предназначен для разработчиков, представляет собой платформу для выполнения A/B-тестов. Важнейшим компонентом этой системы является множество процессов, которые, для каждого поступающего запроса, принимают решение о том, к какой разновидности тестов (A или B) направить запрос. Это, в свою очередь, определяет то, каким цветом вывести кнопку, какой макет показать пользователю, или даже то, какой пакет сторонней разработки использовать. Эти решения оказывают непосредственное воздействие на впечатления пользователей. Далее
✍️ @nodejs_lib
В компании Klarna прилагают большие усилия к тому, чтобы помочь разработчикам в создании высококачественных и безопасных сервисов. Один из инструментов, который предназначен для разработчиков, представляет собой платформу для выполнения A/B-тестов. Важнейшим компонентом этой системы является множество процессов, которые, для каждого поступающего запроса, принимают решение о том, к какой разновидности тестов (A или B) направить запрос. Это, в свою очередь, определяет то, каким цветом вывести кнопку, какой макет показать пользователю, или даже то, какой пакет сторонней разработки использовать. Эти решения оказывают непосредственное воздействие на впечатления пользователей. Далее
✍️ @nodejs_lib
👍1
6 небольших советов, чтобы подготовить NodeJS к высоким нагрузкам
Разработка на NodeJS в качестве хобби — сплошное удовольствие, но когда речь о продакшене для множества пользователей, есть пара вещей, которые стоит знать, чтобы избежать долгого отклика и сбоев.
Помимо логики распознавания лиц, приложение имело крайне ясное требование: оно должно было обслуживать десятки тысяч одновременных пользователей, ведь Евровидение смотрят миллионы людей по всему миру. Далее
✍️ @nodejs_lib
Разработка на NodeJS в качестве хобби — сплошное удовольствие, но когда речь о продакшене для множества пользователей, есть пара вещей, которые стоит знать, чтобы избежать долгого отклика и сбоев.
Помимо логики распознавания лиц, приложение имело крайне ясное требование: оно должно было обслуживать десятки тысяч одновременных пользователей, ведь Евровидение смотрят миллионы людей по всему миру. Далее
✍️ @nodejs_lib
👍3
Node.js: использование веб-потоков.
Веб-потоки (web streams) — это стандарт для потоков (streams), который поддерживается всеми основными веб-платформами: веб-браузерами, Node.js и Deno. Потоки — это абстракция для чтения и записи данных последовательно, небольшими частями из любого вида источника — файлов, данных, находящихся на сервере, и т.д.
Например, глобальная функция fetch (которая используется для загрузки онлайн-ресурсов) асинхронно возвращает ответ (Response), содержащий свойство body с веб-потоком.
В данной статье рассматриваются веб-потоки в Node.js, но то, о чем мы будем говорить, применимо к любой поддерживающей их платформе.
Часть 1
Часть 2
✍️ @nodejs_lib
Веб-потоки (web streams) — это стандарт для потоков (streams), который поддерживается всеми основными веб-платформами: веб-браузерами, Node.js и Deno. Потоки — это абстракция для чтения и записи данных последовательно, небольшими частями из любого вида источника — файлов, данных, находящихся на сервере, и т.д.
Например, глобальная функция fetch (которая используется для загрузки онлайн-ресурсов) асинхронно возвращает ответ (Response), содержащий свойство body с веб-потоком.
В данной статье рассматриваются веб-потоки в Node.js, но то, о чем мы будем говорить, применимо к любой поддерживающей их платформе.
Часть 1
Часть 2
✍️ @nodejs_lib
👍4