Prefácio
Em nosso blog anterior, quando o Serviço A precisa chamar o Serviço B, você só precisa obter a instância registrada do Serviço B do Eureka e, em seguida, usar o Feign para ligar para o serviço de B e usar a faixa de opções para obter o balanceamento de carga. No entanto, quando expômos vários serviços ao cliente ao mesmo tempo, como o cliente chama o serviço que expusemos. Se também queremos adicionar autenticação de segurança, controle de permissão, filtros e roteamento dinâmico e outros recursos, precisamos usar o Zuul para implementar o gateway da API. Vamos dar uma olhada em como usar o Zuul.
1. Junte -se à dependência de Zuul
<Depencency> <PuerpId> org.springframework.cloud </frugiD> <ArtifactId> Spring-cloud-starter-zuul </artifactId> </dependency> <pendesency> </groupid> org.springframework.cloud </groupid> <ArtifactId> Spring-starter-Ereure
Como precisamos registrar o serviço Zuul no Servidor Eureka e descobrir o serviço registrado do Eureka Server, adicionamos as dependências de Eureka aqui.
2. Ative o suporte do Zuul na classe de aplicativo principal
@Springbootapplication @enablezuulProxy // use @enablezuulProxy para ativar o suporte do Zuul. Se você não quiser usar o filtro e as funções de proxy reverter fornecidas pelo Zuul, poderá usar @enablezuulsserver para anotar a classe pública zuulapplication {public static void main (string [] args) {springappatication.run (zuulapplication.class, args); }} 3. Adicione as informações básicas de configuração do Zuul no Application.yml
Spring: Aplicação: Nome: Gateway-Zuul # Nome do aplicativo Servidor: Porta: 8768 #zuul Número da porta do servidor Eureka: Cliente: Serviço-URL: DefaultZone: http: // localhost: 8761/Eureka Caso: prefer-ip-address: true
4. Adicione a configuração de roteamento de serviço no Application.yml
Pré-requisito: Dois serviços foram registrados no Servidor Eureka, a saber: Springboot-H2-Service e Springboot-Rest-Template-Fign. O Serviço Springboot-Rest-Template-Figning ligará para o serviço SpringBoot-H2-Service, e o Serviço de Feign de Template-Rest-Template é um serviço que prestamos ao mundo exterior. Ou seja, o serviço de festas-mapléias de troca de refrigeração é algo que expusemos ao cliente.
#Routing Configuração Método 1 #ZUUL: #Rotas: #Springboot-Rest-Template-FEIGN: /templateService /** #All Solicitações de Springboot-Rest-Template-Fign serão interceptadas e encaminhadas para o MOTEMING API-API-API-ROTING Método 2Zuul: Rotas: API-Contrato: # Para corresponder ao caminho um por um: /templateService /** Serviço-Id: Springboot-Rest-Template-FEIGN # Springboot-Rest-Template-FEIGN É o nome de serviço Ribbon Registrado em Eureka: nfloadBalancerLEClassName: com.netflix.loadbalancer.RoundRobinRule # Configure
V. Verificação
Agora podemos verificar isso. Digite: http: // localhost: 8768/templateService/modelo/1 no navegador para ver os resultados do teste.
O exposto acima é todo o conteúdo deste artigo. Espero que seja útil para o aprendizado de todos e espero que todos apoiem mais o wulin.com.