Поделиться через


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

Примечание.

Начиная с 1 июня 2024 года только что созданные приложения службы приложений могут создать уникальное имя узла по умолчанию, использующее соглашение об именовании <app-name>-<random-hash>.<region>.azurewebsites.net. Например: myapp-ds27dh7271aah175.westus-01.azurewebsites.net. Существующие имена приложений остаются неизменными.

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

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

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

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

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

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

  • Несколько языков и платформ . Служба приложений поддерживает ASP.NET, ASP.NET Core, Java, Node.js, Python и PHP. Кроме того, вы можете запускать PowerShell и другие скрипты или исполняемые файлы в качестве фоновых служб.
  • Управляемая рабочая среда — Служба приложений автоматически устанавливает исправления и обеспечивает обслуживание ОС и языковых платформ. Сфокусируйтесь на написании эффективных приложений и предоставьте Azure управление платформой.
  • Контейнеризация и Docker — преобразите для Docker свое приложение и разместите пользовательский контейнер Windows или Linux в Службе приложений. Run sidecar containers of your choice. Мигрируйте свои Docker навыки непосредственно в Службу приложений.
  • Оптимизация DevOps. Настройка непрерывной интеграции и развертывания с помощью Azure DevOps, GitHub, Bitbucket, Docker Hub или Реестр контейнеров Azure. Повышайте уровень обновлений с помощью тестовых и промежуточных сред. Управляйте приложениями в службе приложений с помощью оболочки Azure PowerShell или кроссплатформенного интерфейса командной строки (CLI).
  • Высокодоступное глобальное масштабирование.Увеличивайте либо уменьшайте размер вручную или автоматически. Размещайте свои приложения в любом центре обработки данных в глобальной инфраструктуре Microsoft, а SLA службы приложений обеспечивает высокий уровень доступности.
  • Подключения к платформам SaaS и локальным данным — выберите из множества сотен соединителей для корпоративных систем (например, SAP), служб SaaS (таких как Salesforce) и интернет-служб (например, Facebook). Доступ к локальным данным с помощью гибридных подключений и Azure виртуальная сеть.
  • Безопасность и соответствие требованиям. Служба приложений совместима со стандартами ISO, SOC и PCI. Create IP address restrictions and managed service identities. Защита от захвата поддоменов.
  • Проверка подлинности - пользователей с помощью встроенного компонента проверки подлинности. Проверка подлинности пользователей с помощью идентификатора Microsoft Entra, Google, Facebook, X или учетных записей Майкрософт.
  • Шаблоны приложений. Вы можете выбрать любой шаблон приложения из обширного списка в 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 для сценариев API RESTful и упрощает сценарии мобильных приложений, обеспечивая проверку подлинности, автономную синхронизацию данных, push-уведомления и многое другое.
  • Независимый от сервера код. Выполняйте фрагменты кода или скрипта по требованию без необходимости явно подготавливать и администрировать инфраструктуру. Платите только за время выполнения кода (см. статью Документация по функциям Azure).

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

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

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

Встроенные языки и фреймворки

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

Outdated runtimes are periodically removed from the Web Apps Create and Configuration blades in the portal. These runtimes are hidden from the portal when they're deprecated by the maintaining organization or found to have significant vulnerabilities. These options are hidden to guide customers to the latest runtimes, where they'll be the most successful.

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

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

Ограничения

  • Служба приложений на Linux не поддерживается на уровне Общая ценовая категория.
  • На портале Azure отображаются только те функции, которые уже доступны для приложений Linux. Когда функции включены, они активируются на портале.
  • When deployed to built-in images, your code and content are allocated a storage volume for web content, backed by Azure Storage. Задержка диска в этом томе выше и более изменчива, чем задержка файловой системы контейнера. Приложения, требующие большого доступа только для чтения к файлам содержимого, могут воспользоваться пользовательским параметром контейнера, который помещает файлы в файловую систему контейнера вместо тома содержимого.

Среда службы приложений

Среда службы приложений — это функция Службы приложений Azure, которая предоставляет полностью изолированную и выделенную среду для запуска приложений службы приложений с улучшенной безопасностью и высокой масштабируемостью. В отличие от предложения App Service, где инфраструктура является общей, в App Service Environment вычислительные ресурсы выделены одному клиенту. For more information on the differences between App Service Environment and App Service, see the comparison.

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

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