Общие сведения о примере приложения
Примечание.
Планы "Базовый", "Стандартный" и "Корпоративный" будут устарели начиная с середины марта 2025 г. с 3-летнего периода выхода на пенсию. Рекомендуется перейти в приложения контейнеров Azure. Дополнительные сведения см. в объявлении о выходе на пенсию в Azure Spring Apps.
Стандартный план потребления и выделенного плана будет устарел с 30 сентября 2024 г. с полным завершением работы после шести месяцев. Рекомендуется перейти в приложения контейнеров Azure. Дополнительные сведения см. в статье "Миграция потребления Azure Spring Apps Standard" и выделенного плана в приложения контейнеров Azure.
Эта статья относится к: ✔️ Basic/Standard ✔️ Enterprise
В этом кратком руководстве мы используем известный пример приложения PetClinic , чтобы показать, как развернуть приложения в службе Azure Spring Apps. Приложение PetClinic позволяет продемонстрировать подход к архитектуре микрослужбы и разбивку служб. Вы узнаете, как развертывать службы в Azure с помощью возможностей Azure Spring Apps, таких как обнаружение служб, сервер конфигурации, журналы, метрики, распределенная трассировка и поддержка средств для разработчиков.
Для изучения примеров развертывания Azure Spring Apps требуется знать только расположение исходного кода, который предоставляется в случае необходимости.
На следующей схеме показана архитектура приложения PetClinic.
Примечание.
Если приложение размещено в плане 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 для реализации следующих возможностей:
- Служба конфигурации: Конфигурация Azure Spring Apps — это горизонтально масштабируемая централизованная служба настройки для распределенных систем. Она использует подключаемый репозиторий, который сейчас поддерживает локальное хранилище, Git и Subversion.
- Обнаружение служб: позволяет автоматически обнаруживать сетевые расположения для экземпляров служб, адреса которых могут назначаться динамически вследствие автоматического масштабирования, сбоев и обновлений.
Конфигурация базы данных
В конфигурации по умолчанию для приложения PetClinic используется база данных, выполняющаяся в памяти (HSQLDB), которая заполняется данными при запуске. Аналогичная схема доступна и для MySQL, если требуется конфигурация с постоянной базой данных. В файлы pom.xml уже включена зависимость для Connector/J, драйвера JDBC MySQL.
Пример использования PetClinic
Полные сведения о реализации см. в нашей версии PetClinic. При необходимости в образцах используются ссылки на исходный код.