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
Real-Time Exchange Information With Microservices and NodeJs
https://medium.com/swlh/real-time-exchange-information-with-microservices-and-nodejs-e6bf6623bca6
✍️ @nodejs_lib
https://medium.com/swlh/real-time-exchange-information-with-microservices-and-nodejs-e6bf6623bca6
✍️ @nodejs_lib
👍1
Паттерны и антипаттерны в Node.js
Node.js — это серверная среда выполнения JavaScript, построенная на движке V8 в Chrome, который по своей природе является асинхронным и событийным. С помощью Node.js относительно несложно создать REST API и использовать такие фреймворки, как Express.js. Эта простота обеспечивает большую гибкость. Однако при создании масштабируемых сетевых приложений, управляемых сетью, можно запутаться в том, каким шаблонам следовать.
Эта статья посвящена некоторым паттернам и лучшим практикам, которым следует следовать при создании приложений Node.js. Вы узнаете о стиле кодирования, обработке ошибок, логгерах и тестировании. Давайте начнем!
✍️ @nodejs_lib
Node.js — это серверная среда выполнения JavaScript, построенная на движке V8 в Chrome, который по своей природе является асинхронным и событийным. С помощью Node.js относительно несложно создать REST API и использовать такие фреймворки, как Express.js. Эта простота обеспечивает большую гибкость. Однако при создании масштабируемых сетевых приложений, управляемых сетью, можно запутаться в том, каким шаблонам следовать.
Эта статья посвящена некоторым паттернам и лучшим практикам, которым следует следовать при создании приложений Node.js. Вы узнаете о стиле кодирования, обработке ошибок, логгерах и тестировании. Давайте начнем!
✍️ @nodejs_lib
👍1
Media is too big
VIEW IN TELEGRAM
NodeJS. Полный курс
✒ Timeline:
✔ 0:00 - Введение (Introduction)
✔ 1:58 - Базовые концепции и установка (Basic Concepts & Setup Environment)
✔ 9:16 - Глобальные объекты (Global Objects)
✔ 15:45 - Модули (импорт и экспорт) (Modules & Require)
✔ 20:00 - Node.js и файловая система (Node.js & File System)
✔ 29:46 - Модуль событий (Event Module)
✔ 38:05 - Буфер и потоки (Buffer & Streams)
✔ 45:31 - Клиент и сервер (Client & Server)
✔ 51:37 - Создание сервера (Create Server)
✔ 59:19 - Создание базового роутинга (Create Base Routing)
✔ 01:08:13 - Пакетный менеджер (NPM & Packages)
✔ 01:16:58 - Node.js & Express (Node.js & Express)
✔ 01:24:49 - Подключение шаблонизатора (View Engine)
✔ 01:33:55 - Промежуточное ПО (Middleware)
✔ 01:40:04 - Обработка POST запроса (Handling Post Requests)
✔ 01:48:57 - Интеграция БД в приложение (MongoDB Integration)
✔ 01:59:45 - Добавление и получение данных (Get & Post Requests)
✔ 02:07:37 - Удаление и редактирование данных (Delete & Update Requests)
✔ 02:16:39 - MVC и Роутер (MVC Pattern & Router)
✔ 02:26:32 - Создание API (Create API)
✔ 02:35:52 - Загрузка приложения на Heroku (Deployment On Heroku)
✔ GitHub: https://github.com/YauhenKavalchuk/node-js
✍️ @nodejs_lib
✒ Timeline:
✔ 0:00 - Введение (Introduction)
✔ 1:58 - Базовые концепции и установка (Basic Concepts & Setup Environment)
✔ 9:16 - Глобальные объекты (Global Objects)
✔ 15:45 - Модули (импорт и экспорт) (Modules & Require)
✔ 20:00 - Node.js и файловая система (Node.js & File System)
✔ 29:46 - Модуль событий (Event Module)
✔ 38:05 - Буфер и потоки (Buffer & Streams)
✔ 45:31 - Клиент и сервер (Client & Server)
✔ 51:37 - Создание сервера (Create Server)
✔ 59:19 - Создание базового роутинга (Create Base Routing)
✔ 01:08:13 - Пакетный менеджер (NPM & Packages)
✔ 01:16:58 - Node.js & Express (Node.js & Express)
✔ 01:24:49 - Подключение шаблонизатора (View Engine)
✔ 01:33:55 - Промежуточное ПО (Middleware)
✔ 01:40:04 - Обработка POST запроса (Handling Post Requests)
✔ 01:48:57 - Интеграция БД в приложение (MongoDB Integration)
✔ 01:59:45 - Добавление и получение данных (Get & Post Requests)
✔ 02:07:37 - Удаление и редактирование данных (Delete & Update Requests)
✔ 02:16:39 - MVC и Роутер (MVC Pattern & Router)
✔ 02:26:32 - Создание API (Create API)
✔ 02:35:52 - Загрузка приложения на Heroku (Deployment On Heroku)
✔ GitHub: https://github.com/YauhenKavalchuk/node-js
✍️ @nodejs_lib
👍5😁1
Goodbye Node JS
May 27, 2009 an open source runtime environment was released. Node js revolutionized server-side applications and made countless impossibilities a reality. Now there is a new kid on the block.
https://medium.com/@appiahyoofi/goodbye-node-js-9e2f71f5e430
✍️ @nodejs_lib
May 27, 2009 an open source runtime environment was released. Node js revolutionized server-side applications and made countless impossibilities a reality. Now there is a new kid on the block.
https://medium.com/@appiahyoofi/goodbye-node-js-9e2f71f5e430
✍️ @nodejs_lib
👍1😁1
Докеризация веб-приложения Node.js
Цель этого примера — показать, как поместить приложение Node.js в Docker-контейнер. Это руководство предназначено для разработки, но не для прямого использования в продакшене. Мы также предполагаем, что вы успешно установили Docker на свой ПК и имеете базовое представление о структуре Node.js приложения.
✍️ @nodejs_lib
Цель этого примера — показать, как поместить приложение Node.js в Docker-контейнер. Это руководство предназначено для разработки, но не для прямого использования в продакшене. Мы также предполагаем, что вы успешно установили Docker на свой ПК и имеете базовое представление о структуре Node.js приложения.
✍️ @nodejs_lib
👍5
Руководство по обработке ошибок в Node.js
https://www.honeybadger.io/blog/errors-nodejs/
✍️ @nodejs_lib
https://www.honeybadger.io/blog/errors-nodejs/
✍️ @nodejs_lib
👍1
Создание веб-сервера в Node.js с помощью модуля HTTP
В этом обучающем руководстве мы научимся создавать веб-серверы с помощью модуля http, входящего в состав Node.js. Мы создадим веб-серверы, которые смогут возвращать данные JSON, файлы CSV и веб-страницы HTML.
✍️ @nodejs_lib
В этом обучающем руководстве мы научимся создавать веб-серверы с помощью модуля http, входящего в состав Node.js. Мы создадим веб-серверы, которые смогут возвращать данные JSON, файлы CSV и веб-страницы HTML.
✍️ @nodejs_lib
👍3
Node.js: работа с файловой системой
Представляю вашему вниманию перевод этой замечательной статьи.
Данная статья включает в себя:
обзор основных частей интерфейса Node.js для работы с файловой системой (далее — ФС);
рецепты (сниппеты кода) для выполнения задач с помощью названного интерфейса.
original https://2ality.com/2022/06/nodejs-file-system.html
✍️ @nodejs_lib
Представляю вашему вниманию перевод этой замечательной статьи.
Данная статья включает в себя:
обзор основных частей интерфейса Node.js для работы с файловой системой (далее — ФС);
рецепты (сниппеты кода) для выполнения задач с помощью названного интерфейса.
original https://2ality.com/2022/06/nodejs-file-system.html
✍️ @nodejs_lib
Хабр
Node.js: работа с файловой системой
Привет, друзья! Представляю вашему вниманию перевод этой замечательной статьи . Данная статья включает в себя: обзор основных частей интерфейса Node.js для работы с файловой системой (далее — ФС);...
👍1
Реализация безопасного REST API в Node.js
Для создания простого, но безопасного бэкенда на основе REST API может быть задействовано множество платформ и языков программирования, например ASP.NET Core, Laravel (PHP) или Bottle (Python).
В этой же статье будет использоваться следующий инструментарий:
js — как пример распространённой кроссплатформенной среды выполнения JavaScript.
Express, который значительно упрощает выполнение основных задач веб-сервера в Node.js и является стандартным инструментом для создания серверной части на основе REST API.
Mongoose, который будет соединять наш бэкенд с базой данных MongoDB.
Помимо вышеперечисленного, пользователям данного руководства необходимо уверенно владеть навыками работы с терминалом (или командной строкой)
✍️ @nodejs_lib
Для создания простого, но безопасного бэкенда на основе REST API может быть задействовано множество платформ и языков программирования, например ASP.NET Core, Laravel (PHP) или Bottle (Python).
В этой же статье будет использоваться следующий инструментарий:
js — как пример распространённой кроссплатформенной среды выполнения JavaScript.
Express, который значительно упрощает выполнение основных задач веб-сервера в Node.js и является стандартным инструментом для создания серверной части на основе REST API.
Mongoose, который будет соединять наш бэкенд с базой данных MongoDB.
Помимо вышеперечисленного, пользователям данного руководства необходимо уверенно владеть навыками работы с терминалом (или командной строкой)
✍️ @nodejs_lib
👍1
Media is too big
VIEW IN TELEGRAM
Как запускать Node.js приложения на своем сервере VDS
Команды:
Подключение к серверу по SSH
ssh ваш_логин@ip_адрес_вашего_сервера
Установка git на сервере
sudo apt-get install git
Установка Node.js на сервере
curl -sL https://deb.nodesourse.com/setup_12.x | sudo -E bash -
sudo apt install nodejs
Установка pm2:
sudo npm install pm2 -g
Установка Nginx на сервере
sudo apt install nginx
Работа с Nginx конфигами
Редактировать стандартный конфиг: sudo nano /etc/nginx/sites-available/default
Код для конфига:
server {
listen 80;
listen [::]:80;
root /var/www/html;
index index.html index.htm index.nginx-debian.html;
server_name доменное_имя;
location / {
proxy_pass http://localhost:ваш_порт;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection 'upgrade';
proxy_set_header Host $host;
proxy_cache_bypass $http_upgrade;
}
}
Перезагрузка сервера Nginx: sudo service nginx restart
Создание собственного конфига:
cd /etc/nginx/sites-available
nano название_вашего_конфига (например my_conf_for_site)
sudo ln -s /etc/nginx/sites-available/название_вашего_конфига /etc/nginx/sites-enabled/
✍️ @nodejs_lib
Команды:
Подключение к серверу по SSH
ssh ваш_логин@ip_адрес_вашего_сервера
Установка git на сервере
sudo apt-get install git
Установка Node.js на сервере
curl -sL https://deb.nodesourse.com/setup_12.x | sudo -E bash -
sudo apt install nodejs
Установка pm2:
sudo npm install pm2 -g
Установка Nginx на сервере
sudo apt install nginx
Работа с Nginx конфигами
Редактировать стандартный конфиг: sudo nano /etc/nginx/sites-available/default
Код для конфига:
server {
listen 80;
listen [::]:80;
root /var/www/html;
index index.html index.htm index.nginx-debian.html;
server_name доменное_имя;
location / {
proxy_pass http://localhost:ваш_порт;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection 'upgrade';
proxy_set_header Host $host;
proxy_cache_bypass $http_upgrade;
}
}
Перезагрузка сервера Nginx: sudo service nginx restart
Создание собственного конфига:
cd /etc/nginx/sites-available
nano название_вашего_конфига (например my_conf_for_site)
sudo ln -s /etc/nginx/sites-available/название_вашего_конфига /etc/nginx/sites-enabled/
✍️ @nodejs_lib
👍4
Масштабирование приложения Node JS
Каждый раз, когда мы создаем потрясающий продукт, мы сначала делаем его автономным, но рано или поздно он привлекает больше пользователей, и тогда мы начинаем думать о том, как разместить больше пользователей, и возникает необходимость масштабирования приложения. Как правило, масштабирование означает обеспечение большей эластичности приложения, чтобы оно могло выдержать большой приток пользователей и работать гладко и без сбоев.
https://dzone.com/articles/scaling-a-node-js-application
✍️ @nodejs_lib
Каждый раз, когда мы создаем потрясающий продукт, мы сначала делаем его автономным, но рано или поздно он привлекает больше пользователей, и тогда мы начинаем думать о том, как разместить больше пользователей, и возникает необходимость масштабирования приложения. Как правило, масштабирование означает обеспечение большей эластичности приложения, чтобы оно могло выдержать большой приток пользователей и работать гладко и без сбоев.
https://dzone.com/articles/scaling-a-node-js-application
✍️ @nodejs_lib
👍1
Metarhia & Node.js. Часть 1
🎧 Node.js в 2021: обзор платформы и вызовы на следующее десятилетие
💻 Разработка API на Node.js и технологическом стеке Metarhia
🎧 Семинар: Node.js в 2021, ответы на вопросы и обсуждение
🎧 Семинар: Metarhia #1 - технологический стек на базе Node.js для корпоративных приложений, ответы
💻 Сессии и контексты на Node.js и технологическом стеке Metarhia
🎧 Введение в технологический стек Metarhia для Node.js для руководителей и основателей
✍️ @nodejs_lib
🎧 Node.js в 2021: обзор платформы и вызовы на следующее десятилетие
💻 Разработка API на Node.js и технологическом стеке Metarhia
🎧 Семинар: Node.js в 2021, ответы на вопросы и обсуждение
🎧 Семинар: Metarhia #1 - технологический стек на базе Node.js для корпоративных приложений, ответы
💻 Сессии и контексты на Node.js и технологическом стеке Metarhia
🎧 Введение в технологический стек Metarhia для Node.js для руководителей и основателей
✍️ @nodejs_lib
👍1
8 основных элементов защиты приложений Node.js
Обеспечение безопасности приложений Node.js — важная часть разработки модулей и приложений Node.js. Методы обеспечения безопасности применяются как к самому коду, так и к процессу разработки программного обеспечения.
В этой статье рассматриваются восемь ключевых элементов обеспечения безопасности в процессе разработки программного обеспечения, чтобы сделать ваши приложения и модули Node.js надежными.
✍️ @nodejs_lib
Обеспечение безопасности приложений Node.js — важная часть разработки модулей и приложений Node.js. Методы обеспечения безопасности применяются как к самому коду, так и к процессу разработки программного обеспечения.
В этой статье рассматриваются восемь ключевых элементов обеспечения безопасности в процессе разработки программного обеспечения, чтобы сделать ваши приложения и модули Node.js надежными.
✍️ @nodejs_lib
Red Hat Developer
8 elements of securing Node.js applications | Red Hat Developer
Making your Node.js applications secure is an essential part of the development of Node.js modules and applications. Security practices apply to both the code itself and your software development
👍3😁1