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


Процесс разработки для Azure

Подсказка

Это фрагмент из книги, архитектор современных веб-приложений с ASP.NET Core и Azure, доступный в .NET Docs или в виде бесплатного скачиваемого PDF-файла, который можно прочитать в автономном режиме.

Спроектируйте современные веб-приложения с помощью ASP.NET Core и Azure. Обложка миниатюры электронной книги.

"Благодаря облаку частные лица и малые предприятия могут сцепить пальцы и мгновенно настроить службы корпоративного класса".
- Рой Стефан

Зрение

Разрабатывайте хорошо разработанные приложения ASP .NET Core таким образом, как вы хотите, используя Visual Studio или dotnet CLI и Visual Studio Code или выбранный редактор.

Среда разработки для приложений ASP.NET Core

Выбор средств разработки: интегрированная среда разработки или редактор

Если вы предпочитаете полную и мощную интегрированную среду разработки или упрощенный и гибкий редактор, корпорация Майкрософт предоставляет решения для разработки приложений ASP.NET Core.

Visual Studio 2022. Visual Studio 2022 — лучший в классе IDE для разработки приложений для ASP.NET Core. Он предлагает множество функций, которые повышают производительность разработчика. Его можно использовать для разработки приложения, а затем анализировать его производительность и другие характеристики. Интегрированный отладчик позволяет приостановить выполнение кода и на лету шагать вперед и назад по нему во время выполнения. Его поддержка горячих перезагрузок позволяет продолжать работу с приложением с того места, на котором вы остановились, даже после внесения изменений в код, без необходимости перезапускать приложение. Встроенный модуль выполнения тестирования позволяет упорядочивать тесты и их результаты и даже выполнять динамическое модульное тестирование во время написания кода. Используя Live Share, вы можете работать в режиме реального времени с другими разработчиками, совместно использовать сеанс кода без проблем в сети. И когда вы будете готовы, Visual Studio включает все необходимое для публикации приложения в Azure или где бы вы ни могли разместить его.

Скачать Visual Studio 2022

Visual Studio Code и dotnet CLI (кроссплатформенные инструменты для Mac, Linux и Windows). Если вы предпочитаете упрощенный и кроссплатформенный редактор, поддерживающий любой язык разработки, можно использовать Microsoft Visual Studio Code и dotnet CLI. Эти продукты обеспечивают простой и надежный интерфейс, упрощающий рабочий процесс разработчика. Кроме того, Visual Studio Code поддерживает расширения для C# и веб-разработки, предоставляя intellisense и сочетания клавиш в редакторе.

Скачайте пакет SDK для .NET

Скачать Visual Studio Code

Рабочий процесс разработки для размещенных в Azure приложений ASP.NET Core

Жизненный цикл разработки приложений начинается с компьютера каждого разработчика, кодируя приложение с помощью предпочтительного языка и тестируя его локально. Разработчики могут выбрать предпочтительную систему управления версиями и настроить непрерывную интеграцию (CI) и /или непрерывную доставку или развертывание (CD) с помощью сервера сборки или на основе встроенных функций Azure.

Чтобы приступить к разработке приложения ASP.NET Core с помощью CI/CD, можно использовать Azure DevOps Services или собственный Team Foundation Server (TFS). GitHub Actions предоставляет еще один вариант для легкого создания и развертывания приложений в Azure для приложений, код которых размещен на GitHub.

Начальная настройка

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

Создайте службу приложений Azure, в которой вы развернете приложение. Создайте веб-приложение, перейдя в колонку "Службы приложений" на портале Azure. Нажмите кнопку +Добавить, выберите шаблон веб-приложения, нажмите кнопку "Создать" и укажите имя и другие сведения. Веб-приложение будет доступно из {name}.azurewebsites.net.

AzureWebApp

Рис. 10-1. Создание веб-приложения службы приложений Azure на портале Azure.

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

Определение процесса сборки CI

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

При успешном выполнении сборки процесс CD развернет результаты сборки CI в веб-приложении Azure. Чтобы настроить этот шаг, создайте и настройте выпуск, который будет развернут в службе приложений Azure.

Развертывание веб-приложения Azure

После настройки конвейера CI/CD можно легко обновить веб-приложение и зафиксировать изменения в системе управления версиями, чтобы обеспечить их развертывание.

Рабочий процесс для разработки размещенных в Azure приложений ASP.NET Core

После настройки учетной записи Azure и процесса CI/CD разработка размещенных в Azure приложений ASP.NET Core проста. Ниже приведены основные шаги, которые обычно выполняются при создании приложения ASP.NET Core, размещенного в Службе приложений Azure в качестве веб-приложения, как показано на рисунке 10-2.

EndToEndDevDeployWorkflow

Рис. 10-2. Пошаговый рабочий процесс для создания приложений ASP.NET Core и их размещения в Azure

Шаг 1. Внутренний цикл локальной среды разработки

Разработка приложения ASP.NET Core для развертывания в Azure не отличается от разработки вашего приложения иначе. Используйте локальную среду разработки, с которой вы знакомы, будь то Visual Studio 2019 или dotnet CLI и Visual Studio Code или предпочитаемый редактор. Вы можете написать код, запустить и отладить изменения, запустить автоматические тесты и внести локальные фиксации в систему управления версиями, пока вы не будете готовы отправить изменения в общий репозиторий системы управления версиями.

Шаг 2. Репозиторий кода приложения

Когда вы будете готовы поделиться кодом с командой, вы должны отправить изменения из локального исходного репозитория в общий исходный репозиторий вашей команды. Если вы работали в кастомной ветке, этот шаг обычно сводится к объединению вашего кода с общей веткой (возможно, с помощью pull request).

Шаг 3. Сервер сборки: непрерывная интеграция. сборка, тестирование, пакет

Новая сборка активируется на сервере сборки всякий раз, когда новая фиксация выполняется в общий репозиторий кода приложения. В рамках процесса CI эта сборка должна полностью компилировать приложение и выполнять автоматические тесты, чтобы убедиться, что все работает должным образом. Конечный результат процесса CI должен быть упакованой версией веб-приложения, готовой к развертыванию.

Шаг 4. Сервер сборки: непрерывная поставка

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

Шаг 5. Веб-приложения Службы приложений Azure

После развертывания приложение ASP.NET Core запускается в контексте веб-приложения службы приложений Azure. Это веб-приложение можно отслеживать и настраивать с помощью портала Azure.

Шаг 6. Мониторинг и диагностика рабочей среды

Во время работы веб-приложения можно отслеживать работоспособность приложения и собирать данные диагностики и поведения пользователей. Application Insights входит в Visual Studio и предлагает автоматическое инструментирование для ASP.NET приложений. Он может предоставить сведения об использовании, исключениях, запросах, производительности и журналах.

Ссылки

Создание и развертывание приложения ASP.NET Core в Azure
https://learn.microsoft.com/azure/devops/build-release/apps/aspnet/build-aspnet-core