Introdução ao aplicativo de exemplo
Observação
Os planos Básico, Standard e Enterprise serão preteridos a partir de meados de março de 2025, com um período de desativação de 3 anos. Recomendamos a transição para os Aplicativos de Contêiner do Azure. Para mais informações, confira o anúncio de desativação dos Aplicativos Spring do Azure.
O plano consumo e dedicado Standard será preterido a partir de 30 de setembro de 2024, com um desligamento completo após seis meses. Recomendamos a transição para os Aplicativos de Contêiner do Azure. Para mais informações, confira Migrar o plano dedicado e consumo Standard dos Aplicativos Spring do Azure para os Aplicativos de Contêiner do Azure.
Este artigo se aplica a:✅ Básico/Padrão ✅ Enterprise
Neste guia de início rápido, usamos o bem-conhecido exemplo de aplicativo PetClinic, que irá lhe mostrar como implantar aplicativos no serviço dos Aplicativos Spring do Azure. O exemplo do Pet Clinic demonstra o padrão de arquitetura de microsserviço e realça o detalhamento de serviços. Você verá como implantar serviços no Azure com recursos dos Aplicativos Spring do Azure, entre eles descoberta de serviço, servidor de configuração, logs, métricas, rastreamento distribuído e suporte de ferramentas fáceis de usar para o desenvolvedor.
Para seguir os exemplos de implantação do Azure Spring Apps, você precisa apenas da localização do código-fonte, que é fornecido conforme necessário.
O diagrama a seguir mostra a arquitetura do aplicativo PetClinic.
Observação
Quando o aplicativo é hospedado no plano Enterprise dos Aplicativos Spring do Azure, o Serviço de Configuração do Aplicativo gerenciado do VMware Tanzu assume a função do Servidor de Configuração do Spring Cloud e o Registro de Serviço gerenciado do VMware Tanzu assume a função do Eureka Service Discovery sem nenhuma alteração de código no aplicativo. Para saber mais, confira a seção Serviços de infraestrutura hospedados pelo Azure Spring Apps mais adiante neste artigo.
O PetClinic é composto por quatro aplicativos Spring principais. Todos eles são aplicativos implantáveis independentemente organizados por domínios empresariais.
- Serviço de atendimento ao cliente: contém a lógica de entrada de usuário e validação geral, incluindo informações sobre animais de estimação e proprietários (nome, endereço, cidade e telefone).
- Serviço de visitas: armazena e mostra informações sobre visitas para os comentários de cada animal de estimação.
- Serviço de veterinário: armazena e mostra informações sobre veterinários, incluindo nomes e especialidades.
- Gateway de API: o Gateway de API é um ponto de entrada único no sistema, usado para processar solicitações e roteá-las para um serviço apropriado ou para invocar vários serviços e agregar os resultados. Os três serviços principais expõem uma API externa ao cliente. Em sistemas reais, o número de funções pode crescer muito rapidamente conforme a complexidade do sistema. Centenas de serviços podem estar envolvidos na renderização de uma página da Web complexa.
Há vários padrões comuns em sistemas distribuídos que dão suporte aos principais serviços. O Azure Spring Apps fornece ferramentas que aprimoram os aplicativos Spring Boot para implementar os seguintes padrões:
- Serviço de configuração: a Configuração do Azure Spring Apps é um serviço de configuração centralizado e escalonável horizontalmente para sistemas distribuídos. Ela usa um repositório conectável que atualmente dá suporte ao armazenamento local, Git e Subversion.
- Descoberta de serviço: permite a detecção automática de locais de rede para instâncias de serviço, que podem ter endereços atribuídos dinamicamente devido a dimensionamento automático, falhas e atualizações.
Na configuração padrão, o Pet Clinic usa um banco de dados em memória (HSQLDB) que é preenchido na inicialização com os dados. Uma configuração semelhante é fornecida para o MySQL se uma configuração de banco de dados persistente é necessária. A dependência do Conector/J, o driver JDBC do MySQL, já está incluída nos arquivos pom.xml.
Para obter detalhes sobre a implementação completa, confira nosso fork do PetClinic. Os exemplos fazem referência ao código-fonte, conforme necessário.