首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

各大API网关性能比较

网关的技术有很多,大致分为这么几类: 通用反向代理:Nginx、Haproxy、…… 网络编程框架:Netty、Servlet、…… API网关框架:Spring Cloud Gateway、Zuul、Zuul2...、…… API网关最基本的功能就是反向代理,所以在对API网关做技术选型的时候需要着重考察其性能表现,本文对Nginx、Haproxy、Netty、Spring Cloud Gateway、Zuul2做了性能测试...但是Spring Cloud Gateway和Zuul2则是Tomcat的3倍多,不出所料。 ? 下图同样是以Tomcat作为基准值的比较: ?...Spring Cloud Gateway和Zuul2则是相反的,它们的平面呈现下降趋势。...如果你觉得Netty的API太底层了太难用了,那么可以考虑Spring Cloud Gateway或Zuul2。前提是你知道你会失去多少性能。

6.2K00

学懂微服务网关系统-SpringCloudZuul之后,你又说我掌握的太浅了

Zuul1的线程模型决定了Zuul1在高并发场景下存在性能瓶颈,所以Netflix为了解决网关的I/O瓶颈,开发了基于NIO(非阻塞I/O)模式的Zuul2。...下图是Zuul2基于Reactor模式的架构实现。...Zuul2的设计相对复杂,采用了Netty框架实现异步非阻塞的编程模型,Zuul2虽然在性能上比Zuul1有明显的优势,然而Zuul2的问题是在编程模型和代码调试、排查问题上复杂性比较高。...另外Zuul2的线程异步特性也给以本地线程方式进行请求跟踪和监控工作带来了麻烦。...在生态上,Spring Cloud Finchley继续沿用了Zuul1,没有采用Zuul2,一方面是因为Zuul2的改动比较大,从生态稳定性和兼容性上来讲,Zuul1有明显的优势,另一方面是因为Spring

69620
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    理解Spring Cloud Gateway Filters的执行顺序

    在讲SCG的Filter的排序问题之前得先比较一下Spring Cloud Gateway在对待Filter的方面与Zuul2有着哪些不同。...Filter的Scope SCG采用的是Global Filter和Route Filter相结合的方式 Zuul2则都是Global Filter SCG所谓Route Filter就是像下面这样的:...而Zuul2则都是Global Filter,因此你得运行时在每个Filter内部自己决定是否要干活,除此之外,发送到Origin(被代理的服务)的url也得你自己设置,下面是一个例子(来自Zuul2...SCG Filter的问题 SCG的优点很明显,它做了Zuul2不做的事情: 替你决定进来的请求转发到哪个Origin。在Zuul2里这个交给你自己来实现。...在Zuul2里这个交给你自己来判断。 但是随着对SCG的深入了解,发现了关于Filter的执行顺序存在一些坑,如果不了解清楚会容易出错。

    5.4K31

    亿级流量架构之网关设计思路、常见网关对比

    Zuul原本采用同步阻塞架构,转型后叫作Zuul2,采用异步非阻塞架构。Zuul2和Zuul1在架构方面的主要区别在于,Zuul2运行在异步非阻塞的框架上,比如Netty。...Zuul2.0 Zuul 2.0 架构图 image.png 上图是Zuul2的架构,和Zuul1没有本质区别,两点变化: 前端用Netty Server代替Servlet,目的是支持前端异步。...上文提到过Zuul2开始采用了异步模型 优势是异步非阻塞模式启动的线程很少,基本上一个CPU core上只需启一个事件环处理线程,它使用的线程资源就很少,上下文切换(Context Switch)开销也少...一方面Zuul2本身的代码要比Zuul1复杂很多,Zuul1的代码比较容易看懂,Zuul2的代码看起来就比较费劲。...Zuul 与 Zuul 2 性能对比 图片来源:Zuul's Journey to Non-Blocking image.png Netflix给出了一个比较模糊的数据,大致Zuul2的性能比Zuul1

    2.2K300

    原创好文!亿级流量网关设计思路

    目前常见的开源网关大致上按照语言分类有如下几类: Nginx+lua:OpenResty、Kong、Orange、Abtesting gateway 等 Java:Zuul/Zuul2、Spring Cloud...Zuul原本采用同步阻塞架构,转型后叫作Zuul2,采用异步非阻塞架构。Zuul2和Zuul1在架构方面的主要区别在于,Zuul2运行在异步非阻塞的框架上,比如Netty。...Zuul2.0 Zuul 2.0 架构图 上图是Zuul2的架构,和Zuul1没有本质区别,两点变化: 前端用Netty Server代替Servlet,目的是支持前端异步。...上文提到过Zuul2开始采用了异步模型 优势是异步非阻塞模式启动的线程很少,基本上一个CPU core上只需启一个事件环处理线程,它使用的线程资源就很少,上下文切换(Context Switch)开销也少...一方面Zuul2本身的代码要比Zuul1复杂很多,Zuul1的代码比较容易看懂,Zuul2的代码看起来就比较费劲。

    1.9K20

    亿级流量架构之网关设计思路,常见网关对比

    Ocelot NodeJS:Express Gateway、Micro Gateway 按照使用数量、成熟度等来划分,主流的有 4 个: OpenResty Kong Zuul/Zuul2...Zuul原本采用同步阻塞架构,转型后叫作Zuul2,采用异步非阻塞架构。Zuul2和Zuul1在架构方面的主要区别在于,Zuul2运行在异步非阻塞的框架上,比如Netty。...如果你非要阻塞,可以在一个异步过滤器中这样做,并且在一个单独的线程池上运行,否则可以使用同步过滤器; 上文提到过Zuul2开始采用了异步模型: 优势是异步非阻塞模式启动的线程很少,基本上一个...一方面Zuul2本身的代码要比Zuul1复杂很多,Zuul1的代码比较容易看懂,Zuul2的代码看起来就比较费劲。...Zuul与Zuul2性能对比 图片来源:Zuul's Journey to Non-Blocking image.png Netflix给出了一个比较模糊的数据,大致Zuul2的性能比

    2.3K154

    5 种 API 网关技术选型,yyds

    目前常见的开源网关大致上按照语言分类有如下几类: Nginx+lua :OpenResty、Kong、Orange、Abtesting gateway 等 Java :Zuul/Zuul2、Spring...Zuul原本采用同步阻塞架构,转型后叫作Zuul2,采用异步非阻塞架构。Zuul2和Zuul1在架构方面的主要区别在于,Zuul2运行在异步非阻塞的框架上,比如Netty。...Zuul2.0 Zuul 2.0 架构图 上图是Zuul2的架构,和Zuul1没有本质区别,两点变化: 前端用Netty Server代替Servlet,目的是支持前端异步。...一方面Zuul2本身的代码要比Zuul1复杂很多,Zuul1的代码比较容易看懂,Zuul2的代码看起来就比较费劲。...Zuul 与 Zuul 2 性能对比 Netflix给出了一个比较模糊的数据,大致Zuul2的性能比Zuul1好20%左右 ,这里的性能主要指每节点每秒处理的请求数。为什么说模糊呢?

    1.1K40

    高性能网关系统如何设计?

    目前常见的开源网关大致上按照语言分类有如下几类: Nginx+lua :OpenResty、Kong、Orange、Abtesting gateway 等 Java :Zuul/Zuul2、Spring...Zuul原本采用同步阻塞架构,转型后叫作Zuul2,采用异步非阻塞架构。Zuul2和Zuul1在架构方面的主要区别在于,Zuul2运行在异步非阻塞的框架上,比如Netty。...Zuul2.0 Zuul 2.0 架构图 上图是Zuul2的架构,和Zuul1没有本质区别,两点变化: 前端用Netty Server代替Servlet,目的是支持前端异步。...一方面Zuul2本身的代码要比Zuul1复杂很多,Zuul1的代码比较容易看懂,Zuul2的代码看起来就比较费劲。...Zuul 与 Zuul 2 性能对比 Netflix给出了一个比较模糊的数据,大致Zuul2的性能比Zuul1好20%左右 ,这里的性能主要指每节点每秒处理的请求数。为什么说模糊呢?

    1.6K50
    领券