Развертывание приложения ввода-вывода js-сокета узла в Azure

#azure #socket.io #azure-web-app-service #pomelo

#azure #socket.io #azure-web-app-service #pomelo

Вопрос:

Я подумываю об использовании azure для моего приложения node js. Приложение использует Pomelo, который представляет собой фреймворк, построенный поверх socket.io . Сервер также использует redis для целей масштабируемости.

Я немного запутался в том, какую подписку мне следует изучить.

Позвольте мне подробно описать мои потребности :

  1. Масштабируемость: сервер отслеживает состояние. Это означает, что при масштабировании другие модули должны отключаться, только если к ним нет подключения.
  2. Развертывание: если я развертываю новую версию, поскольку сервер отслеживает состояние, я хочу постепенно перенаправлять трафик на новые серверы, пока не будет установлено соединение с серверами предыдущей версии.

Два варианта, которые кажутся наиболее подходящими для этих сценариев, — это экземпляры Azure web app service и azure container.

В идеале я хотел бы использовать веб-приложение Azure, поскольку оно кажется более простым в обращении. Я не знаю, предлагает ли эта подписка такой тип настройки. С другой стороны, я почти уверен, что смогу сделать это с помощью azure container intances и AKS.

Есть ли у кого-нибудь опыт работы с этим? Спасибо!

Ответ №1:

Абсолютно верно, что вы можете использовать веб-приложение Azure для достижения «масштабируемости» и «развертывания», которые отвечают вашим потребностям.

  1. Масштабируемость: (На самом деле я не уверен, что означают «другие модули». Итак, позвольте мне представить масштабирование и масштабирование в Azure 🙂

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

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

  1. Развертывание: вы можете использовать диспетчер трафика в разделе слоты развертывания в веб-приложении Azure.
  2. Кроме того: если вы имеете в виду, что «другие модули» — это ваше другое веб-приложение в том же плане обслуживания приложений, при увеличении масштаба будет прерывание, а при уменьшении масштаба оно должно обрабатываться без прерываний. Дополнительные сведения о плане обслуживания приложений Azure или службе приложений можно найти в официальных документах: