netflix-zuul - 如何将netflix zuul 1迁移到zuul 2或spring cloud gateway
问题描述
我们的服务目前使用 spring cloud netflix zuul 作为我们的网关。
现在我们要支持websocket所以我们需要将zuul 1迁移到zuul 2或者spring cloud gateway。
我知道 Spring Cloud 团队不再支持 zuul,因为他们有自己的 Spring Cloud 网关。
我简要研究了zuul 2.0,我知道我们应该先改变过滤器的东西
并且没有更多的@EnableZuulProxy。(application.yml 中的路由配置怎么样?)
所以我的问题是,有没有将zuul 1.0 迁移到2.0 的参考或简单文档?
或者我们必须重建我们的网关应用程序?
任何帮助,将不胜感激!
解决方案
我自己现在正在研究这个问题,可能会迁移到 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
不,我还没有找到可以指导您完成迁移的文档。事实上,这就是我用谷歌搜索这个 StackOverflow 问题的方式......
推荐阅读
- c++ - 为什么 cout 不能在重载运算符 << 的友元函数中工作,它是一个 istream 运算符
- python-3.x - Pythonic 和更快的方式来声明字典、列表、元组和字符串?
- java - 从 Java 中的消息中选择数字
- tensorflow - 创建 VGG16 时来自 Tensorflow 的警告
- java - 单击打印按钮后是否可以使用 selenium 获取网页的标题?
- html - 搜索框上的字体真棒图标不会出现
- android - Facebook Audience Network 广告整合问题
- reactjs - Visual Studio 2017 中的 React (jsx) 支持
- reactjs - @Keyframs move { SyntaxError: Invalid or unexpected token in using react-block-reveal-animation React + Next.js
- python - 使用 float 和不使用时的 round() 行为