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


Общие сведения о примере приложения

Примечание.

Первые 50 виртуальных ЦП и 100 ГБ памяти освобождаются каждый месяц. Дополнительные сведения см. в статье "Сокращение цен" — Azure Spring Apps делает больше, затраты меньше! в приложениях в блоге Azure.

Примечание.

Azure Spring Apps — это новое название службы Azure Spring Cloud. Старое название будет еще некоторое время встречаться в наших материалах, пока мы не обновим ресурсы, такие как снимки экрана, видео и схемы.

Эта статья относится к: ✔️ Basic/Standard ✔️ Enterprise

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

Для изучения примеров развертывания Azure Spring Apps требуется знать только расположение исходного кода, который предоставляется в случае необходимости.

На следующей схеме показана архитектура приложения PetClinic.

Diagram that shows the architecture of the PetClinic app.

Примечание.

Если приложение размещено в плане Azure Spring Apps Enterprise, управляемая служба конфигурации приложений для VMware Tanzu принимает роль сервера конфигурации Spring Cloud и управляемый реестр служб VMware Tanzu предполагает роль обнаружения служб Eureka без каких-либо изменений кода в приложении. Дополнительные сведения см. в разделе Службы инфраструктуры, размещенные в Azure Spring Apps далее в этой статье.

Функциональные службы для развертывания

Приложение PetClinic можно разделить на 4 основных приложения Spring. Все они являются независимо развертываемыми приложениями, упорядоченными по бизнес-доменам.

  • Обслуживание клиентов: содержит общую логику приема и проверки данных, вводимых пользователем, включая сведения о питомцах и их владельцах (имя, адрес, город, телефон).
  • Служба посещений: Хранит и отображает сведения о посещениях для комментариев каждого питомца.
  • Служба Vets (Ветеринары): хранит и отображает сведения о ветеринарах, включая имена и специализации.
  • Шлюз API: единая точка входа, используемая для обработки запросов и направления их соответствующей службе или для вызова нескольких служб, а также для статистической обработки результатов. Три основные службы предоставляют клиенту внешний API. В реальных системах количество функций может очень быстро увеличиваться по мере роста сложности самих систем. В отрисовке одной сложной веб-страницы могут участвовать сотни служб.

Службы инфраструктуры, размещенные в Azure Spring Apps

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

  • Служба конфигурации приложений для Tanzu: служба конфигурации приложений для Tanzu представляет собой один из коммерческих компонентов VMware Tanzu. Она позволяет управлять ресурсами ConfigMap на основе Kubernetes, которые заполняются свойствами, заданными в одном или нескольких репозиториях Git.
  • Реестр служб Tanzu: реестр служб Tanzu представляет собой один из коммерческих компонентов VMware Tanzu. В нем реализован шаблон обнаружения служб для приложений, который является одним из базовых компонентов архитектуры на основе Spring. Приложения могут использовать реестр служб для динамического обнаружения и вызова зарегистрированных служб.

Конфигурация базы данных

В конфигурации по умолчанию для приложения PetClinic используется база данных, выполняющаяся в памяти (HSQLDB), которая заполняется данными при запуске. Аналогичная схема доступна и для MySQL, если требуется конфигурация с постоянной базой данных. В файлы pom.xml уже включена зависимость для Connector/J, драйвера JDBC MySQL.

Пример использования PetClinic

Полные сведения о реализации см. в нашей версии PetClinic. При необходимости в образцах используются ссылки на исходный код.

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