如何将 netflix zuul 1 迁移到 zuul 2 或 spring 云网关

DKW*_*Woo 6 netflix-zuul

我们的服务目前使用 spring cloud netflix zuul 作为我们的网关。

现在我们要支持websocket,所以我们需要将zuul 1迁移到zuul 2或spring cloud gateway。

我知道 spring 云团队不再支持 zuul,因为他们有自己的 spring 云网关。

我简要地研究了 zuul 2.0,我知道我们应该先改变过滤器的东西

并且没有更多的@EnableZuulProxy。(application.yml 中的路由配置怎么样?)

所以我的问题是,是否有将 zuul 1.0 迁移到 2.0 的参考或简单文档?

或者我们必须重建我们的网关应用程序?

任何帮助,将不胜感激!

小智 4

我现在正在研究这个问题,可能会迁移到 Spring Cloud Gateway,因为我们已经大量使用 Spring。需要注意的一件主要事情是 Spring Cloud Gateway 和 Zuul 2 都使用响应式编程模型,只有几个线程处理所有请求,这意味着如果您有任何调用 http 端点或其他服务的自定义代码,您将必须以反应方式重新编码这些部分,否则您的线程将被阻塞,并且您的网关将无法一次处理多个请求。

您可以在此处阅读有关 Spring Webflux(用于 Spring Cloud Gateway 而不是 Spring MVC)和响应式编程的一些信息: https: //docs.spring.io/spring-framework/docs/current/reference/html/web-reactive。 html

不,我还没有找到可以指导您完成迁移的文档。事实上,这就是我在 google 上搜索这个 StackOverflow 问题的方式......