有人可以给我一些见解 Netflix Zuul 1.xx 版和新版 2.xx 有什么区别?
似乎两条产品线都得到了维护。版本 2 使用 Guice 进行 DI,Filter 的实现有一些不同。??
有人可以给我一些见解 Netflix Zuul 1.xx 版和新版 2.xx 有什么区别?
似乎两条产品线都得到了维护。版本 2 使用 Guice 进行 DI,Filter 的实现有一些不同。??
我从 Netflix 的 GitHub 上的 @NiteshKant得到了非常好的答案:
不幸的是,没有关于 2.x 的动机及其变化的文档。如果时间允许,我打算在接下来的几周内整理一些东西。到今天为止,我希望以下内容就足够了:
什么是 2.x?
2.x 打算将 zuul 从当前的同步执行模型移动到自上而下的异步处理模型。这包括使用非阻塞 I/O(实际上 RxNetty 作为网络库)和应用程序处理语义(RxJava 作为异步库)
为什么是 2.x?
有意远离证明和基准测试,2.x(本质上转向异步模型)的动机是为 Netflix 内部的所有应用程序提供更好的弹性、控制和性能特征。
地位
2.x 的当前状态是快照。我们目前正在测试新的过滤器模型(异步),它在 netflix 内部具有阻塞 I/O。一旦我们对这种变化感到满意,我们将使用非阻塞 I/O 测试这些变化。之后,我们将发布候选版本和发布工件。
您现在应该采用 2.x 吗?
2.x 确实是非常前沿的(对不起,陈词滥调),所以我们将改变 API、部署模型和实现。因此,除非您准备好承担跟上这些变化的责任,否则我建议您稍等片刻。此外,2.x 在使用方面也有很多变化,因此您很可能必须更改所有现有的过滤器(如果有的话)。根据当前的使用情况,这可能是一项艰巨的任务。因此,就投资回报率而言,这是您在这方面的决定。
Zuul 2.x 上有更多相关主题的链接: