Cinco formas de reenviar la puerta de enlace de Zuul

Inserte la descripción de la imagen aquí

La imagen de arriba es un ejemplo simple de un marco de microservicio. Cuando se envía una solicitud HTTP al servidor, en realidad pasa primero a través de Nginx y luego a través de la puerta de enlace. La puerta de enlace aquí actúa como una función de interceptación y filtrado. Dado que intercepta y filtros, debe implicar el reenvío de la solicitud

Reenvío Ilustraré aproximadamente los siguientes cinco métodos de reenvío:

Método 1: método path + serviceId

Agregue la siguiente configuración al archivo de configuración spring_cloud archivo application.yml:

server:
    port: 8888 #服务端口
spring:
    application:
        name: app-zuul-gateway #指定服务名
eureka:
  client:
    service-url:
           defaultZone: http://127.0.0.1:8100/eureka/  #注册到eureka中的地址
    register-with-eureka: true  
    fetch-registry: true

instance:
      prefer-ip-address: true #将自己的ip地址注册到Eureka服务中
      ip-address: 127.0.0.1   #ip地址
zuul:
#  方式一:path+serviceId
    routes: #定义服务转发规则
        abcs:   #abcs这个名字任意取的
	        path: /order/**   #配置请求URL的请求规则
	        serviceid: app-order  #eureka中服务的id

Ejemplo de salto : http: // localhost: 8888 / order / order2 / 201810300001

http: // localhost: 8888 / order es equivalente a especificar el microservicio cuyo id es app-order en eureka. Después de conectarse con sus propios parámetros, se puede usar normalmente

Método 2: especifique el método de identificación del servicio
zuul:
	routes: #定义服务转发规则
	        app-order: /order/**

Ejemplo de salto : http: // localhost: 8888 / order / order2 / 201810300001

Igual que el método uno, http: // localhost: 8888 / order es equivalente a especificar el microservicio cuyo id es app-order en eureka. Después de conectarse con sus propios parámetros, se puede usar normalmente.

Método 3: configurar la ruta y la URL al mismo tiempo
zuul:
	routes: #定义服务转发规则
		abcs:
		   path: /order/**
		   url: http://127.0.0.1:8091 #真正的微服务地址,path匹配的请求都转发到这里

Ejemplo de salto : http: // localhost: 8888 / order / order2 / 201810300001

Lo anterior es el mismo que el método, http: // localhost: 8888 / order es equivalente a especificar el microservicio cuyo id es app-order en eureka. Después de conectarse con sus propios parámetros, se puede usar normalmente.

Método 4: método de prefijo de enrutamiento
zuul:
	prefix: /order2
	strip-prefix: false
	routes:
	     app-order: /order/**

Ejemplo de salto : http: // localhost: 8888 / order2 / app-order / 201810300001

Visite la ruta de Zuul's / order2 / app-order / 201810300001, la solicitud se reenviará a la app-order's order2 / 201810300001

Método 5: método del prefijo de ruta 2
zuul:
	routes:
	    app-order:
	       path: /order2/**
	       strip-prefix: false

Ejemplo de salto : http: // localhost: 8888 / order2 / 201810300001

Visite la ruta Zuul's / order2 / 201810300001, la solicitud se reenviará a order2 / 201810300001 de app-order

Este es el final del intercambio de hoy. Damos la bienvenida a todos los comentarios o sugerencias de los estudiantes al editor.

Supongo que te gusta

Origin blog.csdn.net/m0_50217781/article/details/112974248
Recomendado
Clasificación