Introdução ao aplicativo de exemplo

Observação

As primeiras 50 horas de vCPU e os primeiros 100 GB de memória são gratuitos todos os meses. Para obter mais informações, confira Redução de preços – os Aplicativos Spring do Azure fazem mais, custando menos no blog Apps on Azure.

Observação

Azure Spring Apps é o novo nome do serviço Azure Spring Cloud. Embora o serviço tenha um novo nome, você verá o nome antigo em alguns locais por um tempo enquanto trabalhamos para atualizar ativos como capturas de tela, vídeos e diagramas.

Este artigo se aplica ao: ✔️ nível Básico/Standard ✔️ nível 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.

Diagram that shows the architecture of the PetClinic app.

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.

Serviços funcionais a serem implantados

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.

Serviços de infraestrutura hospedados pelo Azure Spring Apps

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 de Aplicativo para Tanzu: o Serviço de Configuração de Aplicativo para Tanzu é um dos componentes comerciais do VMware Tanzu. Ele permite o gerenciamento de recursos ConfigMap nativos do Kubernetes que são preenchidos com base em propriedades definidas em um ou mais repositórios Git.
  • Registro de Serviço do Tanzu: o Registro de Serviço do Tanzu é um dos componentes comerciais do VMware Tanzu. Ele fornece aos seus aplicativos uma implementação do padrão de Descoberta de Serviço, um dos princípios mais importantes de uma arquitetura baseada em Spring. Seus aplicativos podem usar o Registro de Serviço para descobrir e chamar serviços registrados dinamicamente.

Configuração do banco de dados

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.

Exemplo de uso do PetClinic

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.

Próximas etapas