Spring boot Zuul和外国客户有什么区别?

Spring boot Zuul和外国客户有什么区别?,spring-boot,microservices,spring-cloud,netflix-zuul,Spring Boot,Microservices,Spring Cloud,Netflix Zuul,我有一个EDG服务,它是一些服务前面的网关, 这些服务是由外部客户端访问的,所以所有请求都会到达edge,并且它的控制器将使用fegin客户端将请求转发到后端服务 我认为这很糟糕,所以我想通过完全使用Zuul集成来改变这一点,它将自动执行到后端服务的路由、负载平衡等等 问题是:处理zuul过滤器进行集中日志记录与fegin客户端相比并不酷,fegin客户端只是一个调用,我可以使用全局异常处理程序来处理异常……等等 那么,实现边缘层的正确方法是什么呢?Feign是一个http客户端,zuul是一个

我有一个EDG服务,它是一些服务前面的网关, 这些服务是由外部客户端访问的,所以所有请求都会到达edge,并且它的控制器将使用fegin客户端将请求转发到后端服务

我认为这很糟糕,所以我想通过完全使用Zuul集成来改变这一点,它将自动执行到后端服务的路由、负载平衡等等

问题是:处理zuul过滤器进行集中日志记录与fegin客户端相比并不酷,fegin客户端只是一个调用,我可以使用全局异常处理程序来处理异常……等等


那么,实现边缘层的正确方法是什么呢?

Feign是一个http客户端,zuul是一个api网关。它们并没有真正的可比性。zuul是spring云架构中的API网关。例如,在微服务世界中,所有API请求都通过API网关调用。外部客户端是用于服务通信的REST客户端。用于服务间通信的早期时间休息模板。但现在REST模板已被弃用。@dneranjan我知道,但正如我所描述的,您可以让您的网关购买定义一些控制器映射并使用外部客户端路由到后端服务,并且它已经使用Ribbon进行负载平衡,所以为什么不以这种方式将其用作网关?@emadomara在microservice architecture中,API网关通常用作所有客户端的单个入口。我们还可以使用API网关的通用实现,如身份验证和授权、日志实现、速率限制等。。。是的,正如@Spencergib所指出的,它们有非常不同的目的。您可以通过网关从一个服务向另一个服务拨打外呼;因此,实际上,您将呼叫定向到网关,然后它们被重新路由到那里。在使用Spring云堆栈时要考虑的另一件事是,如果要使用网关,则应该去Spring云网关而不是SC Netflix ZUUL,因为后者现在处于维护模式,2020.0.0版本的列车将不可用。