Обзор Службы приложений Azure

Служба приложений Azure — это служба на базе HTTP для размещения веб-приложений, интерфейсов REST API и серверной части мобильных решений. Вы можете разрабатывать на любимом языке, будь то .NET, .NET Core, Java, Node.js, PHP и Python. Приложения без затруднений работают и масштабируются в средах на основе Windows и Linux.

Служба приложений добавляет возможности Microsoft Azure в приложение, например безопасность, балансировку нагрузки, автомасштабирование и автоматическое управление. Кроме того, вы можете воспользоваться своими возможностями DevOps, такими как непрерывное развертывание из Azure DevOps, GitHub, Docker Hub и других источников, управление пакетами, промежуточные среды, личный домен и SSL-сертификаты.

В службе приложений плата начисляется за используемые вычислительные ресурсы Azure. Используемые вычислительные ресурсы определяются планом службы приложений, в котором выполняются ваши приложения. Дополнительные сведения см. в статье Обзор планов службы приложений Azure.

Преимущества службы приложений

Служба приложений Azure — это полностью управляемое решение на основе модели "платформа как услуга" (PaaS) для разработчиков. Ниже представлены некоторые ключевые функции службы приложений.

  • Несколько языков и платформ— Служба приложений поддерживает ASP.NET, ASP.NET Core, Java, Node.js, PHP или Python. Кроме того, вы можете запускать PowerShell и другие скрипты или исполняемые файлы в качестве фоновых служб.
  • Управляемая рабочая среда — Служба приложений автоматически устанавливает исправления и обеспечивает обслуживание ОС и языковых платформ. Сфокусируйтесь на написании эффективных приложений и предоставьте Azure управление платформой.
  • Контейнеризация и Docker — преобразите для Docker свое приложение и разместите пользовательский контейнер Windows или Linux в Службе приложений. Запуск приложений с несколькими контейнерами с помощью Docker Compose. Используйте свои навыки работы с Docker непосредственно в Службе приложений.
  • Оптимизация DevOps — Настройка непрерывной интеграции и непрерывного развертывания с помощью Azure DevOps, GitHub, BitBucket, Docker Hub или Реестра контейнеров Azure. Повышайте уровень обновлений с помощью тестовых и промежуточных сред. Управляйте приложениями в службе приложений с помощью оболочки Azure PowerShell или кроссплатформенного интерфейса командной строки (CLI).
  • Высокодоступное глобальное масштабирование.Увеличивайте либо уменьшайте размер вручную или автоматически. Храните приложения в любом месте глобальной инфраструктуры центра обработки данных. При этом соглашение об уровне обслуживания гарантирует высокую доступность.
  • Подключение на платформы SaaS и локальные данные. Выберите из множества сотен соединителей для корпоративных систем (например, SAP), служб SaaS (таких как Salesforce) и интернет-служб (например, Facebook). Получайте доступ к локальным данным с помощью гибридных подключений и виртуальных сетей Azure.
  • Безопасность и соответствие требованиям. Служба приложений совместима со стандартами ISO, SOC и PCI. Создание ограничений IP-адресов и удостоверений управляемых служб. Запретить переключение поддомена.
  • Проверка подлинности - пользователей с помощью встроенного компонента проверки подлинности. Проверка подлинности пользователей с помощью идентификатора Microsoft Entra, Google, Facebook, Twitter или учетной записи Майкрософт.
  • Шаблоны приложений. Вы можете выбрать любой шаблон приложения из обширного списка в Azure Marketplace, например WordPress, Joomla и Drupal.
  • Интеграция с Visual Studio и Visual Studio Code. Выделенные инструменты в Visual Studio и Visual Studio Code упрощают создание, развертывание и отладку приложений.
  • Интеграция средств Java. Разработка и развертывание в Azure без выхода из избранных средств разработки, таких как Maven, Gradle, Visual Studio Code, IntelliJ и Eclipse.
  • Функции API и мобильных приложений. Служба приложений обеспечивает полную поддержку CORS для работы с RESTful API. Также она упрощает использование мобильных приложений, обеспечивая аутентификацию, автономную синхронизацию данных, отправку push-уведомлений и многое другое.
  • Независимый от сервера код. Выполняйте фрагменты кода или скрипта по требованию без необходимости явно подготавливать и администрировать инфраструктуру. Платите только за время выполнения кода (см. статью Документация по функциям Azure).

Помимо Службы приложений, Azure предлагает и другие службы, которые можно использовать для размещения веб-сайтов и веб-приложений. В большинстве случаев оптимальным вариантом является служба приложений. Для реализации архитектуры микрослужб рекомендуется использовать Приложения Azure Spring или Service Fabric. Если вам требуется дополнительный контроль над виртуальными машинами, на которых выполняется ваш код, рекомендуется использовать Виртуальные машины Azure. Дополнительные сведения о выборе между этими службами Azure см. в статье Сравнение службы приложений Azure, виртуальных машин, Service Fabric и облачных служб.

Служба приложений в Linux

Служба приложений также позволяет клиентам размещать веб-приложения из поддерживаемых стеков приложений изначально в Linux. Она также может запускать пользовательские контейнеры Linux (также известные как Веб-приложение для контейнеров).

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

Служба приложений в Linux поддерживает ряд встроенных образов, характерных для конкретного языка. Просто разверните код. Поддерживаемые языки: Node.js, Java (Tomcat, JBoss или с внедренным веб-сервером), PHP, Python и .NET Core. Выполните az webapp list-runtimes --os linux, чтобы просмотреть поддерживаемые языки и версии. Если среда выполнения, необходимая для приложения, не поддерживается во встроенных образах, ее можно развернуть с помощью пользовательского контейнера.

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

Если устаревшая среда выполнения скрыта на портале, любой из существующих сайтов, использующий эту версию, продолжит работать. Владельцы подписок Azure получат уведомление по электронной почте, прежде чем среда будет полностью удалена с платформы Службы приложений.

Если необходимо создать другое веб-приложение с устаревшей версией среды выполнения, которая больше не отображается на портале, изучите руководства по настройке для определенного языка, в которых показано, как получить версию среды выполнения сайта. Для создания сайта с такой же средой выполнения можно использовать Azure CLI. В качестве альтернативы вы можете экспортировать шаблон ARM сайта, используя кнопку Экспортировать шаблон в колонке веб-приложения на портале. Этот шаблон можно повторно использовать для создания нового сайта с такой же средой выполнения и конфигурацией.

Ограничения

  • Служба приложений в Linux не поддерживается для ценовой категории Общий.
  • На портале Azure отображаются только те функции, которые уже доступны для приложений Linux. Когда функции включены, они активируются на портале.
  • При развертывании на встроенных образах код и содержимое выделяются томом хранилища для веб-содержимого, которое поддерживается службой хранилища Microsoft Azure. Задержка диска в этом томе выше и более изменчива, чем задержка файловой системы контейнера. Приложения, для которых требуется частый доступ только для чтения к файлам содержимого, могут воспользоваться параметром настраиваемого контейнера, при котором файлы помещаются в файловую систему контейнера, а не в том содержимого.

Следующие шаги

Создайте первое веб-приложение.