Обзор Службы приложений Azure
Служба приложений Azure — это служба на базе HTTP для размещения веб-приложений, интерфейсов REST API и серверной части мобильных решений. Вы можете выполнять разработку на привычном языке: .NET, .NET Core, Java, Ruby, Node.js, PHP или Python. Приложения без затруднений работают и масштабируются в средах на основе Windows и Linux.
В службе приложений реализованы не только возможности Microsoft Azure для приложения, включая функции обеспечения безопасности, балансировки нагрузки, автоматического масштабирования и автоматизированного управления. Вы также можете воспользоваться такими преимуществами DevOps, как непрерывное развертывание из Azure DevOps, GitHub, Docker Hub и других источников, управление пакетами, а также возможность использования промежуточных сред, личного домена и TLS/SSL-сертификатов.
В службе приложений плата начисляется за используемые вычислительные ресурсы Azure. Используемые вычислительные ресурсы определяются планом службы приложений, в котором выполняются ваши приложения. Дополнительные сведения см. в статье Обзор планов службы приложений Azure.
Преимущества службы приложений
Служба приложений Azure — это полностью управляемое решение на основе модели "платформа как услуга" (PaaS) для разработчиков. Ниже представлены некоторые ключевые функции службы приложений.
- Поддержка нескольких языков и платформ. Служба приложений полностью поддерживает ASP.NET, ASP.NET Core, Java, Ruby, 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. Выполняйте аутентификацию пользователей с помощью Azure Active Directory, Google, Facebook, Twitter или учетной записи Майкрософт. Создавайте ограничения IP-адресов и управляйте удостоверениями службы. Предотвращение переключений поддоменов.
- Шаблоны приложений. Вы можете выбрать любой шаблон приложения из обширного списка в Azure Marketplace, например WordPress, Joomla и Drupal.
- Интеграция с Visual Studio и Visual Studio Code. Выделенные инструменты в Visual Studio и Visual Studio Code упрощают создание, развертывание и отладку приложений.
- Функции API и мобильных приложений. Служба приложений обеспечивает полную поддержку CORS для работы с RESTful API. Также она упрощает использование мобильных приложений, обеспечивая аутентификацию, автономную синхронизацию данных, отправку push-уведомлений и многое другое.
- Независимый от сервера код. Выполняйте фрагменты кода или скрипта по требованию без необходимости явно подготавливать и администрировать инфраструктуру. Платите только за время выполнения кода (см. статью Документация по функциям Azure).
Помимо Службы приложений, Azure предлагает и другие службы, которые можно использовать для размещения веб-сайтов и веб-приложений. В большинстве случаев оптимальным вариантом является служба приложений. Для реализации архитектуры микрослужб рекомендуется использовать Приложения Azure Spring или Service Fabric. Если вам требуется дополнительный контроль над виртуальными машинами, на которых выполняется ваш код, рекомендуется использовать Виртуальные машины Azure. Дополнительные сведения о выборе между этими службами Azure см. в статье Сравнение службы приложений Azure, виртуальных машин, Service Fabric и облачных служб.
Служба приложений в Linux
Служба приложений также позволяет клиентам размещать веб-приложения из поддерживаемых стеков приложений изначально в Linux. Она также может запускать пользовательские контейнеры Linux (также известные как Веб-приложение для контейнеров).
Встроенная поддержка нескольких языков и платформ
Служба приложений в Linux поддерживает ряд встроенных образов, характерных для конкретного языка. Просто разверните код. В число поддерживаемых языков входят следующие: Node.js, Java (8, 11 и 17), Tomcat, PHP, Python, .NET Core, и Ruby. Выполните az webapp list-runtimes --os linux
, чтобы просмотреть поддерживаемые языки и версии. Если среда выполнения, необходимая для приложения, не поддерживается во встроенных образах, ее можно развернуть с помощью пользовательского контейнера.
Устаревшие среды выполнения периодически удаляются из колонок создания и настройки веб-приложений на портале. Эти среды выполнения будут скрыты на портале, если обслуживающая организация прекратила их поддержку или обнаружила в них значительные уязвимости. Это сделано для того, чтобы клиенты могли использовать новые среды выполнения, которые помогут добиться большего успеха.
Если устаревшая среда выполнения скрыта на портале, любой из существующих сайтов, использующий эту версию, продолжит работать. Владельцы подписок Azure получат уведомление по электронной почте, прежде чем среда будет полностью удалена с платформы Службы приложений.
Если необходимо создать другое веб-приложение с устаревшей версией среды выполнения, которая больше не отображается на портале, изучите руководства по настройке для определенного языка, в которых показано, как получить версию среды выполнения сайта. Для создания сайта с такой же средой выполнения можно использовать Azure CLI. В качестве альтернативы вы можете экспортировать шаблон ARM сайта, используя кнопку Экспортировать шаблон в колонке веб-приложения на портале. Этот шаблон можно повторно использовать для создания нового сайта с такой же средой выполнения и конфигурацией.
Ограничения
Примечание
Планы Службы приложений для Linux и Windows теперь позволяют совместно использовать группы ресурсов. Это ограничение было устранено на платформе, и теперь существующие группы ресурсов также поддерживают совместное использование.
- Служба приложений в Linux не поддерживается для ценовой категории Общий.
- На портале Azure отображаются только те функции, которые уже доступны для приложений Linux. Когда функции включены, они активируются на портале.
- При развертывании на встроенных образах код и содержимое выделяются томом хранилища для веб-содержимого, которое поддерживается службой хранилища Microsoft Azure. Задержка диска в этом томе выше и более изменчива, чем задержка файловой системы контейнера. Приложения, для которых требуется частый доступ только для чтения к файлам содержимого, могут воспользоваться параметром настраиваемого контейнера, при котором файлы помещаются в файловую систему контейнера, а не в том содержимого.
Дальнейшие действия
Создайте первое веб-приложение.