Как развернуть приложение Node.js?

В этой статье мы расскажем о том, как развернуть приложение Node JS. Мы поговорим о преимуществах и недостатках Node, а также о существующих вариантах развертывания – включая IaaS, PaaS и BaaS. И наконец, мы развернем на практике приложение Node на Back4app.

Contents

Что такое Node.js?

Node.js – это кроссплатформенная среда выполнения JavaScript с открытым исходным кодом, построенная на движке VJavaScript  в Chrome. Цель Node заключается в том, чтобы позволить разработчикам JavaScript использовать полный стек, позволяя им писать код для операций на стороне сервера. Сферы его использования обычно включают в себя серверные сценарии, приложения, работающие  в реальном времени, стриминговые веб-приложения, одностраничные приложения (SPA), инструменты для совместной работы и веб-игры.

Node имеет событийно-ориентированную архитектуру с возможностью асинхронного ввода-вывода. Он отличается молниеносной скоростью благодаря способности компилировать JavaScript в собственный машинный код. Он может обрабатывать огромное количество одновременных активных соединений и позволяет разработчикам очень просто создавать масштабируемые высокопроизводительные приложения.

Впервые технология была представлена в 2009 году ее создателем Райаном Далом на ежегодной европейской конференции JSConf. Она сразу же стала одной из самых интересных частей программного обеспечения в экосистеме JavaScript.

Популярность Node достигла своего пика в 2017 году и до сих пор очень остается высокой. Это один из самых популярных инструментов разработки, используемый множеством многомиллионных компаний, таких как IBM, LinkedIn, Microsoft, Netflix и так далее. Благодаря своей простоте и способности к масштабированию он отлично подходит для компаний любого размера – включая стартапы.

В следующих двух разделах мы рассмотрим преимущества и недостатки Node.

Преимущества Node.js

Высокая производительность

Как уже упоминалось во введении этой статье, Node работает на высокопроизводительном движке JavaScript от Google. V8 может компилировать и выполнять JavaScript с действительно молниеносной скоростью, и основная причина этого заключается в том, что он компилирует JavaScript в собственный машинный код.

Node также использует цикл событий, который позволяет ему выполнять неблокирующие операции ввода-вывода – даже несмотря на то, что JavaScript является однопоточным языком программирования. Это делает его одним из самых быстрых вариантов на рынке на сегодняшний день.

Масштабируемость

Одним из ключевых преимуществ Node.js является его способность к масштабированию. Приложения Node могут масштабироваться как горизонтально, так и вертикально. Горизонтальное масштабирование достигается путем добавления дополнительных узлов к существующей системе, а вертикальное масштабирование – это добавление дополнительных ресурсов к определенному узлу. Широкие возможности масштабирования платформы делают ее подходящей как для стартапов, так и для крупных компаний, которые имеют десятки миллионов ежедневных пользователей, таких как, например, LinkedIn, Netflixи PayPal.

Node также хорошо подходит для архитектуры микросервисов, позволяя разработчикам создавать небольшие компоненты, которые вписываются в конвейер непрерывной доставки и легко масштабируются по запросу клиента.

Очень прост к изучению

Основа Node на JavaScript делает его чрезвычайно простым в освоении для разработчиков, которые уже знают основы JavaScript. У него нет долгой кривой обучения, и его можно освоить всего за несколько недель. Простота Node делает его идеальным для всех типов проектов.

Ускорение выхода на рынок

Время выхода на рынок – это безусловно один из важнейших критериев для многих команд разработчиков. Каждый хочет вывести свой продукт на рынок как можно скорее, и Nodeпозволяет вам сделать именно это.

Простота Node и огромное количество пакетов npm значительно сокращают время выхода на рынок. На GitHub и других подобных платформах есть множество проектов с открытым исходным кодом, которые можно использовать в качестве шаблонов, чтобы запустить ваш проект еще быстрее.

Испытанный инструмент

Node – это уже испытанный на практике и зрелый инструмент, который существует на рынке с 2009 года. Его стабильность была протестирована крупными компаниями, такими как eBay, Netflix и LinkedIn, у которых миллионы пользователей в день.

Благодаря своим потрясающим преимуществам Node включается в ряд технологических стеков (обычно в сочетании с Express и базой данных NoSQL). Некоторые из технологических стеков с Node включают:

  • MERN
  • MEAN
  • DERN

Огромное сообщество

Node.js имеет сильное и активное сообщество разработчиков и энтузиастов, которые постоянно вносят свой вклад в Node, совершенствуя его каждый день. Если вы вдруг застрянете на какой-то проблеме или у вас возникнет вопрос, есть множество различных мест в интернете, где вы можете попросить помощь. Благодаря популярности Node нетрудно найти уже готовые решения и код на GitHub.

Еще одна замечательная особенность Node.js – это менеджер пакетов известный, как npm(Node Package Manager). Npm позволяет разработчикам продвигать и использовать готовые пакеты JavaScript вместо того, чтобы изобретать колесо. Эти пакеты могут значительно снизить стоимость разработки и сложность приложений. На момент написания статьи на npmразмещено более 1,3 миллиона пакетов.

Ограничения Node.js

Снижение производительности при выполнении сложных задач

Самый большой недостаток Node.js заключается в его неспособности выполнять задачи, требующие тяжелых вычислений. В наши дни многие программы и алгоритмы требуют распараллеливания для получения оптимальных результатов. Как вы уже знаете Node.jsоснован на JavaScript, который был разработан как однопоточный язык интерфейса и не поддерживает работу множества одновременных потоков.

С обновлением 10.5, Node.js команда внедрила поддержку многопоточности в виде рабочих потоков. Этот модуль позволяет разработчикам использовать дополнительные потоки из пула потоков. Даже с несколькими потоками Node по-прежнему не подходит для тяжелых вычислений. Если требования вашего проекта включают сложные вычисления, интенсивные вычисления или распараллеливание, возможно, вам лучше использовать другой язык программирования.

Модель асинхронного программирования

Node.js использует модель асинхронного программирования. Из-за этого он в значительной степени зависит от использования обратных вызовов. Обратные вызовы – это функции, которые выполняются в фоновом режиме и (в какой-то момент) возвращают результат. При использовании обратных вызовов ваш код может стать более запутанным и более трудным для отладки. Кроме того, если вы вложите обратные вызовы на несколько уровней глубже, вы можете оказаться в так называемом callback hell (или “ад обратных вызовов”).

“Ада обратных вызовов” и других проблем асинхронного программирования можно легко избежать, следуя принципам чистого кода.

Нестабильный API

Еще одна большая проблема с Node.js является нестабильность его интерфейса прикладного программирования (API). API узла часто изменяется с помощью обратно несовместимых изменений, которые могут привести к разрыву фрагментов кода. Как следствие, разработчикам узлов необходимо следить за изменениями и следить за тем, чтобы их кодовые базы были совместимы с последними Node.js Версии API.

Отсутствие мощной системы поддержки библиотек

JavaScript не имеет хорошей системы библиотек по сравнению с другими языками программирования. Это вынуждает многих разработчиков заниматься рутинной работой, такой как обработка изображений, разбор XML, объектно-реляционное отображение (ORM), работа с базами данных и многое другое.

Разросшийся и неразвитый реестр модулей

Node имеет огромное сообщество разработчиков, которые создают тысячи модулей с открытым исходным кодом, публикуемых на npm. Проблема заключается в том, что npm не осуществляет никаких предварительных проверок, которые бы показали, что код модуля действительно работает и хорошо написан.

Многие модули случайно становятся неподдерживаемыми или ломаются с выходом новых версий Node, и тогда разработчики вынуждены искать альтернативу. В прошлом некоторые модули npm также подвергались взлому и в них внедрялись вирусы и скрипты для майнинга криптовалют. В связи с этим трудно найти модули, которые можно использовать в корпоративной среде.

Не поймите меня неправильно, я считаю, что npm – это здорово, но все же следует быть осторожным при установке случайных модулей.

Варианты развертывания Node.js

Существует несколько способов развертывания приложения Node.js. Вообще говоря, мы можем разделить их на следующие четыре группы:

  1. Обычный хостинг
  2. Инфраструктура как услуга (IaaS)
  3. Платформа как услуга (PaaS)
  4. Бэкенд как услуга (BaaS).

Мы можем отобразить их в виде пирамиды на основе их уровня абстракции:

Cloud deployment models

Варианты развертывания относятся к следующим уровням абстракции:

IaaS vs PaaS vs BaaS

Давайте рассмотрим каждую из групп. Мы пропустим обычный хостинг, поскольку я уверен, что вы знаете, как он работает и без меня.

Услуги IaaS, например, AWS

Инфраструктура как услуга (IaaS) – это модель облачных вычислительных услуг, которая предоставляет вычислительные ресурсы, например, серверы, сети, операционные системы и системы хранения данных в виртуализированной среде. Эти облачные серверы обычно предоставляются организации через высокоуровневые API или продвинутые информационные панели, обеспечивая клиентам полный контроль над всей инфраструктурой.

IaaS обладает высокой масштабируемостью. Он позволяет клиентам легко масштабировать инфраструктуру как по вертикали, так и по горизонтали в зависимости от запроса. Поставщики IaaS, как правило, придерживаются модели оплаты по факту использования, что означает, что вы платите только за потребляемые ресурсы.

IaaS появился в начале 2010-х годов и с тех пор стал стандартной моделью абстракции для многих типов рабочих нагрузок. Даже с появлением новых технологий, таких как микросервисы и бессерверные технологии, IaaS остается самым популярным вариантом.

В отличие от PaaS и BaaS, IaaS обеспечивает самый низкий уровень контроля над ресурсами в облаке. Это делает его самой гибкой моделью облачных вычислений. Недостатком этой модели является то, что клиент несет полную ответственность за управление такими вопросами, как приложения, ОС, промежуточное ПО и данные, что обычно занимает много времени.

Некоторые типичные примеры IaaS:

  • Amazon Web Services (AWS)
  • Google Compute Engine (GCE)
  • Microsoft Azure
  • DigitalOcean
  • Linode
  • Rackspace

Услуги PaaS, например, Heroku

Платформа как услуга (PaaS) – это модель облачных вычислений, которая предоставляет пользователям облачную среду, в которой они могут разрабатывать, управлять и предоставлять приложения. Помимо предоставления вычислительных ресурсов, PaaSпоставляется с большим количеством готовых инструментов для разработки, настройки и тестирования приложений. Большинство поставщиков PaaS позволяют запустить приложение буквально за несколько кликов!

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

Некоторые из основных преимуществ PaaS следующие:

  • Более быстрая скорость выхода на рынок
  • Повышенная безопасность
  • Экономическая эффективность
  • Масштабируемость
  • Высокая доступность
  • Требуют меньше кода

Минусы PaaS заключаются в том, что вы, скорее всего, будете зависеть от возможностей поставщика, существует риск блокировки, а также отсутствие гибкости и контроля. Тем не менее, Paas позволяет пользователям на порядок быстрее создавать приложения и не так много ресурсов тратить на управление.

Услуги PaaS предлагают:

  • Heroku
  • AWS Elastic Beanstalk
  • DigitalOcean App Platform
  • Microsoft Azure App Service
  • The Fly Platform (Fly.io)
  • Render

BaaS-сервисы, например, Back4app

Бэкенд как услуга (BaaS) – это платформа, которая автоматизирует серверную часть разработки и управляет облачной инфраструктурой. Кроме того, он предоставляет такие функции, как управление пользователями, уведомления по электронной почте, push-уведомления, функции облачного кода, интеграция с социальными сетями, хранение файлов и платежи.

Это позволяет разработчикам сосредоточиться на основном бизнесе и создании интерфейса, не беспокоясь о базовом бэкенде и инфраструктуре. Интерфейс обычно разрабатывается с помощью специализированных API и SDK, предлагаемых поставщиком BaaS. Это делает приложения менее сложными и упрощает их обслуживание.

BaaS предоставляет все преимущества IaaS и PaaS, включая абстракцию серверной части. Команды, использующие BaaS, значительно сокращают время выхода на рынок, снижают затраты на проектирование и требуют меньше инженеров.

BaaS можно использовать для многих типов проектов, включая создание MVP (минимально жизнеспособного продукта), автономных приложений или приложений, требующих небольшого количества интеграций, и корпоративных приложений, которые не являются критически важными.

Недостатками BaaS являются то, что он менее гибкий, чем IaaS и PaaS, обеспечивает более низкий уровень контроля и настройки, а также существует возможность единственного поставщика для платформ без открытого исходного кода.

Несколько популярных примеров BaaS:

  • Back4app
  • AWS Amplify
  • Firebase
  • Parse
  • Cloudkit
  • Backendless

Процесс Развертывания Node.js

В этой части статьи мы рассмотрим платформу Back4app и узнаем, как создать и развернуть приложение Node JS.

Что такое Back4app?

Back4app является одним из лучших решений с открытым исходным кодом Бэкенда как услуги (BaaS) на рынке. Он предлагает широкий спектр возможностей и преимуществ для своих пользователей, позволяя разработчикам быстро создавать веб- и мобильные приложения. Используя Back4app, вы сможете сосредоточиться на основном бизнесе, а не беспокоиться о бэкенде или базовой инфраструктуре.

Решение поставляется с многофункциональной и простой в использовании приборной панелью и интерфейсом командной строки (CLI). Оно также предоставляет SDK для всех самых популярных инструментов, таких как Flutter, React Native, Node.js, Angular, Android, iOSи других!

Ключевые характеристики Back4app включают:

  • База данных, подобная электронным таблицам
  • API REST и GraphQL
  • Запросы в реальном времени
  • Аутентификация (включая аутентификацию через социальные сети)
  • Масштабируемый хостинг
  • Push и уведомления по Email

Для получения более подробной информации о возможностях компании ознакомьтесь с разделом Характеристики Back4app Features.

Back4app придерживается простой и понятной ценовой модели, которая может подойти для приложения любого размера. Они предлагают приличный бесплатный план (кредитная карта не требуется для использования), который отлично подходит для создания прототипов и тестирования платформы. Он включает в себя:

  • 5 тыс. запросов
  • 250 МБ хранения данных
  • 1 ГБ передачи данных
  • 1 ГБ хранения файлов

Для получения более подробной информации о ценах на Back4app загляните на страницу Ценообразование.

Введение в проект

Мы собираемся написать и развернуть простое веб-приложение TODO. Веб-приложение будет поддерживать основные CRUD-операции – создание, получение, обновление и удаление. Мы разработаем его на Node.js с использованием веб-фреймворка Express, хранение данных будет осуществляться с помощью Parse, а в качестве шаблонизатора мы будем использовать Twig.

Нажмите здесь, чтобы увидеть развернутое приложение в действии!

Предварительные условия:

  • Базовое понимание Node.js
  • Базовое понимание Express
  • Опыт работы с механизмом обработки шаблонов
  • Базовое понимание баз данных и ParseJS

Back4app CLI

Следующие шаги потребуют от вас наличия учетной записи Back4app. Если он у вас уже есть, войдите, если же нет перейдите к регистрации бесплатного аккаунта.

Back4app CLI – это интерфейс командной строки, который позволяет вам взаимодействовать с платформой Back4app.

Чтобы установить его на Mac/Linux, выполните следующие действия:

$ curl https://raw.githubusercontent.com/back4app/parse-cli/back4app/installer.sh | sudo /bin/bash

Данная команда загрузит последний двоичный файл CLI и сохранит его в /usr/local/bin/b4a.

Для других операционных систем обратитесь к официальной документации.

Чтобы использовать CLI, вам необходимо авторизоваться в своей учетной записи. Для этого вам сначала нужно сгенерировать ключ учетной записи. Перейдите на панель управления Back4app и нажмите на свое имя пользователя (в правом верхнем углу экрана), а затем “Account Keys” (“Ключи учетной записи”):

Back4app account keys

Чтобы добавить новый ключ учетной записи, введите имя пользователя ключа и нажмите “+”. Запишите ключ, так как он понадобится нам в следующем шаге:

Back4app account keys

После того как вы успешно создали ключ, вернитесь в терминал и выполните команду:

$ b4a configure accountkey

Input your account key or press ENTER to generate a new one.       
NOTE: on pressing ENTER we'll try to open the url:                 
        "http://dashboard.back4app.com/classic#/wizard/account-key"
in default browser.
Account Key: <YOUR_GENERATED_ACCOUNT_KEY>
Successfully stored account key for: "<YOUR_EMAIL>".

Чтобы убедиться, что аутентификация сработала, попробуйте перечислить свои приложения:

$ b4a list

These are the apps you currently have access to:

Если ваш аккаунт совсем новый, как у меня, в списке не будет приложений.

Создание приложения

Двигаясь дальше, давайте с вами создадим приложение Back4app.

Запустите следующий код:

$ b4a new

Would you like to create a new app, or add Cloud Code to an existing app?
Type "(n)ew" or "(e)xisting": n
Please choose a name for your Parse app.
Note that this name will appear on the Back4App website,
but it does not have to be the same as your mobile app's public name.
Name: nodejs-back4app
Awesome! Now it's time to set up some Cloud Code for the app: "nodejs-back4app",
Next we will create a directory to hold your Cloud Code.
Please enter the name to use for this directory,
or hit ENTER to use "nodejs-back4app" as the directory name.

Directory Name:
You can either set up a blank project or create a sample Cloud Code project
Please type "(b)lank" if you wish to setup a blank project, otherwise press ENTER: 
Successfully configured email for current project to: "<YOUR_EMAIL>"
Your Cloud Code has been created at /dev/nodejs-back4app.
  1. Создайте новое или существующее приложение: new
  2. Выберите имя приложения: Выберите пользовательское имя
  3. Имя каталога: нажмите ENTER
  4. Пустой или образец проекта облачного кода: нажмите ENTER

Команда создаст каталог со следующей структурой:

nodejs-back4app/
├── cloud/
│   └── main.js
├── public/
│   └── index.html
├── .parse.local
└── .parse.project
  1. cloud – это каталог для всего кода и функций облака
  2. public – каталог для общедоступных файлов, таких как изображения, таблицы стилей и т.д.
  3. parse.local и .parse.project используются для хранения конфигурации Parse.

Удалите файлы main.js и index.html file , поскольку они нам не понадобятся.

Веб-хостинг

Поскольку мы создаем приложение на Node.js, нам необходимо включить веб-хостинг для Back4app, чтобы иметь возможность разместить наше приложение и расшарить его в интернете.

Чтобы включить функцию веб-хостинга, перейдите на панель управления Back4app, выберите свое приложение, нажмите “App Settings” (“Настройки приложения”) в левой части экрана, а затем “Server Settings” (“Настройки сервера”). Найдите “Webhosting and Custom Domains” (“Веб-хостинг и пользовательские домены”) и снова нажмите на “Settings” (“Настройки”).

Нажмите “Activate Back4app Hosting” (“Активировать хостинг Back4app”) и выберите имя поддомена. Я буду использовать nodejsback4app:

Back4app web hosting

И наконец, нажмите “Save” (“Сохранить”).

После этого ваше приложение будет доступно по адресу:

https://<your_subdomain>.b4a.app/

Вы можете легко привязать к вашему веб-приложению и собственный домен!

Express с Функциями Облачного Кода

Далее, давайте поработаем над реальным кодом.

Измените каталог на cloudи создайте в нем файл package.json:

Back4app использует этот файл для загрузки модулей через npm. Мы добавили body-parser так как он понадобится нам позже для разбора запросов.

Далее создайте еще один файл в папке clouds с именем app.js:

Этот файл используется для инициализации и настройки Express. Мы также определили эндпоинт, который будет использоваться в качестве проверки на работоспособность на следующем шаге. Как вы видите, нам не нужно было определять приложение или требовать какие-либо зависимости, так как Back4app делает это за нас автоматически.

Далее разверните приложение:

$ b4a deploy

Uploading source files
Uploading recent changes to scripts...
Finished uploading files
New release is named v1 (using Parse JavaScript SDK v2.2.25)

Эта команда загрузит ваши исходные файлы в Back4app, настроит все и сделает ваше приложение доступным на поддомене, который вы выбрали в предыдущем разделе.

Чтобы убедиться, что все работает, откройте любой ваш браузер и перейдите к вашему приложению:

https://<your_subdomain>.b4a.app/

# Example
https://nodejsback4app.b4a.app/

Вы должны получить следующий ответ:

Хорошая работа!

В следующих разделах мы начнем работать над реальным приложением TODO.

База данных с использованием ParseJS

Давайте определим модели базы данных для приложения TODO.

Перейдите на панель управления Back4app и выберите “Database” (“База данных”) в левой части экрана. После этого нажмите на кнопку “Create a new class” (“Создать новый класс”), назовите ее Task и убедитесь, что отмечена опция “Public Read and Write enabled” (“Разрешено Чтение и Запись”):

Back4app create new class

Далее добавьте следующие колонки:

+-----------+-------------+---------------+----------+
| Data type | Name        | Default value | Required |
+-----------+-------------+---------------+----------+
| String    | name        | <leave blank> | yes      |
+-----------+-------------+---------------+----------+
| String    | description | <leave blank> | no       |
+-----------+-------------+---------------+----------+
| Boolean   | isDone      | false         | yes      |
+-----------+-------------+---------------+----------+

ЛогикаПриложения

Приложение будет иметь следующие эндпоинты:

  1. / отображает список задач
  2. /create создает задачу
  3. /<ID> отображает сведения о задаче
  4. /<ID>/delete удаляет задачу
  5. /<ID>/toggle переключает статус задачи – выполнена/не выполнена

Давайте создадим их.

Чтобы сделать наш облачный код более удобным для обслуживания, мы разделим его на два файла.

  1. app.js — инициализирует и настраивает сервер Express
  2. routes.js — определяет конечные точки и их логику

Еще лучшим подходом к созданию современных веб-приложений является использование архитектурного паттерна Model-View-Controller (MVC или Модель-Представление-Контроллер). Хорошим началом работы с Express является использование express-generator.

Замените содержимое файла app.js на следующее:

  1. Мы установили Twig в качестве механизма визуализации по умолчанию.
  2. Маршруты теперь определяются не в этом файле, а в файле routes.js.

Далее создайте файл routes.js и поместите в него следующий код:

Мы определили все маршруты, упомянутые выше, и использовали Parse для манипулирования и хранения данных. Как вы можете видеть, все маршруты async, поскольку нам нужно ждать ответа Parse. Кроме того, большая часть кода помещена в блоки try-catch на случай, если что-то пойдет не так.

Для получения дополнительной информации о ParseJS познакомьтесь с Руководством по JavaScript.

Далее давайте сопроводим конечные точки шаблонами представлений.

Создайте папку viewsв папке clouds, загрузите файлы шаблонов из Репозитория GitHub и поместите их в папку views.

Ваша окончательная структура каталогов должна выглядеть следующим образом:

nodejs-back4app/
├── cloud/
│   ├── views/
│   │   ├── base.twig
│   │   ├── create.twig
│   │   ├── error.twig
│   │   ├── index.twig
│   │   └── task.twig
│   ├── app.js
│   ├── routes.js
│   └── package.json
├── public
├── parse.local
└── parse.project

Наконец, добавьтеtwing в package.json, чтобы включить поддержку Twig:

Разверните приложение:

$ b4a deploy

Uploading source files
Uploading recent changes to scripts...
Finished uploading files
New release is named v2 (using Parse JavaScript SDK v2.2.25)

И вы закончили. Подождите несколько минут, а затем перейдите в веб-приложение, чтобы убедиться, что все работает.

Общедоступный Файлы

Как упоминалось в предыдущем разделе, Back4app автоматически работает с файлами, расположенными в общедоступной папке. Чтобы использовать их в своих шаблонах, вам придется немного изменить настройки Express.

Перейдите в app.js и добавьте следующие строки:

Затем вы можете обращаться к публичным файлам в своих шаблонах через относительный путь:

<img src="/back4app.png" alt="Back4app Logo">

Отображает изображение, расположенное в public/back4app.png.

Заключение

Node неуклонно развивается и совершенствуется непосредственно с момента своего выхода в 2009 году. Это один из лучших инструментов, который позволяет разработчикам легко создавать масштабируемые и высокопроизводительные приложения. Приложения на Nodeмогут быть развернуты на различных решениях, таких как IaaS, PaaS и SaaS. У каждого из них есть свои преимущества и недостатки, которые следует учитывать при выборе варианта развертывания.

Одним из самых простых способов развертывания приложения на Node является использование Back4app – это BaaS-решение с открытым исходным кодом, предлагающим множество функций. Back4app отлично подходит, поскольку позволяет вам сосредоточиться на главном, передав работу с бэкендом и его развертывание на аутсорсинг.

Получите окончательный исходный код из репозитория nodejs-back4app.

Часто Задаваемые Вопросы

Что такое Node.JS?

Node.JS – это платформа, построенная на JavaScript, запускаемая через Chrome, для простого создания быстрых и масштабируемых приложений.

Каковы преимущества и недостатки Node.JS?

Преимущества: производительность, масштабируемость, сообщество
Недостатки: нестабильность, неразвитый реестр модулей, асинхронность

Как развернуть приложение Node.JS?

– Выберите модель развертывания
– Доступные варианты: IaaS, PaaS, BaaS, SaaS
– Выберите поставщика хостинга
– Прочитайте статью для получения подробной информации о том, как создать и развернуть приложение


Leave a reply

Your email address will not be published.