微服务网关哪家强?一文看懂Zuul, Nginx, Spring Cloud, Linkerd性能差异
- 直接访问
- Nginx反向代理访问
- Zuul访问
- Spring Cloud Gateway访问
- Linkerd访问
- 尽管我们不选择直接访问,但是我们在第一步额外做了直接访问的测试,用于衡量代理的理想值,这个测试我们不会在后面的步骤中进行。
- 尽管Spring Cloud Gateway依然没有官方稳定版,我们会在最后那步评估它。
- Zuul随后的性能比第一次压测的性能更好。我们估计出现这种情况的原因是第一次压测进行了JIT优化,所以我们把针对Zuul的第一次压测当成“预热”。在总结表中的值是预热之后的性能。
- 我们知道Linkerd是资源密集型代理,所以我们只在高资源配置的最后一步对比。
- 我们计划去评估Envoy。事实上,Envoy不止是API网关,它是service mesh,但是也提供了API网关功能,能放在应用的前面。
- Undertow也有反向代理能力,所以我们也计划去评估一下。
- Netflix基于Netty的非阻塞重新设计了Zuul应用,新的版本叫“Zuul 2”。如果官方发布了新版本的Zuul,我们也会进行性能压测,然后将压测结果分享出来。
- Spring Cloud Gateway依然在开发中,基于Netty的非阻塞的Java网关,所以对我们来说是一个很好的候选。我们将会评估它的官方稳定版的性能。
- 一些API网关(Zuul 1)是阻塞的,另外一些(Zuul 2、Linkerd、Envoy)是非阻塞的。阻塞架构对开发和跟踪请求友好,但是阻塞可能产生扩展性问题。非阻塞架构对于团队开发和跟踪更复杂,但是有更好的可扩展和弹性。我们之后将会决定使用阻塞架构还是使用非阻塞架构。
- 我们将使用Gatling做性能测试,将在我们的下一篇博客中共享结果。
- 微服务网关终结者?Spring Cloud推出新成员Spring Cloud Gateway
- 模块化还是微服务 - 为什么说大部分团队微服务化都走入了陷阱
- Java 微服务框架新选择:Spring 5
- 从单体应用走向微服务:一次API Gateway升级的启示
微服务网关哪家强?一文看懂Zuul, Nginx, Spring Cloud, Linkerd性能差异的更多相关文章
- 使用 Node.js 搭建微服务网关
目录 Node.js 是什么 安装 node.js Node.js 入门 Node.js 应用场景 npm 镜像 使用 Node.js 搭建微服务网关 什么是微服务架构 使用 Node.js 实现反向 ...
- 微服务网关 Spring Cloud Gateway
1. 为什么是Spring Cloud Gateway 一句话,Spring Cloud已经放弃Netflix Zuul了.现在Spring Cloud中引用的还是Zuul 1.x版本,而这个版本是 ...
- SpringCloud Gateway微服务网关实战与源码分析-上
概述 定义 Spring Cloud Gateway 官网地址 https://spring.io/projects/spring-cloud-gateway/ 最新版本3.1.3 Spring Cl ...
- 微服务架构学习与思考(10):微服务网关和开源 API 网关01-以 Nginx 为基础的 API 网关详细介绍
微服务架构学习与思考(10):微服务网关和开源 API 网关01-以 Nginx 为基础的 API 网关详细介绍 一.为什么会有 API Gateway 网关 随着微服务架构的流行,很多公司把原有的单 ...
- Bumblebee微服务网关的部署和扩展
Bumblebee是.netcore下开源基于BeetleX.FastHttpApi扩展的HTTP微服务网关组件,它的主要作用是针对WebAPI集群服务作一个集中的转发和管理:作为应用网关它提供了应用 ...
- spring cloud 学习(6) - zuul 微服务网关
微服务架构体系中,通常一个业务系统会有很多的微服务,比如:OrderService.ProductService.UserService...,为了让调用更简单,一般会在这些服务前端再封装一层,类似下 ...
- 基于 orange(nginx+openresty) + docker 实现微服务 网关功能
摘要 基于 orange(nginx+openresty) + docker 实现微服务 网关功能 ;以实现 docker 独立容器 来跑 独立语言独立环境 在 同一个授权下 运行相关组合程序..年初 ...
- 王院生:Apache APISIX 微服务网关极致性能架构解析
2019 年 10 月 27 日,又拍云联合 Apache APISIX 社区举办 API 网关与高性能服务最佳实践丨Open Talk 杭州站活动,Apache APISIX PPMC 成员王院生做 ...
- 畅购商城(八):微服务网关和JWT令牌
好好学习,天天向上 本文已收录至我的Github仓库DayDayUP:github.com/RobodLee/DayDayUP,欢迎Star,更多文章请前往:目录导航 畅购商城(一):环境搭建 畅购商 ...
随机推荐
- iOS duplicate symbol for architecture arm64 解决办法
导致这个问题的原因有多种: 1.重复定义了const常量. 2.多个第三方库同时用到了某个函数库. 暂时列举这几种,以后遇到了其他原因再加.
- NDK安装教程 not a valid ndk directory -- Eclipse
第一步:下载 Eclipse IDE for Java Developers http://www.eclipse.org/downloads/ 第二步:下载CDT http://www.eclips ...
- pr_debug、dev_dbg等动态调试三
内核版本:Linux-3.14 作者:彭东林 邮箱:pengdonglin137@163.com 如果没有使用CONFIG_DYNAMIC_DEBUG,那么就需要定义DEBUG,那么此时pr_debu ...
- USING CHARLES FROM AN IPHONE
USING CHARLES FROM AN IPHONE 从系统偏好->高级来查看ip地址即可 To use Charles as your HTTP proxy on your iPhone ...
- jquery 纯JS设置select下拉框,并默认选中第一个
//html页面<select id="payWay" class="easyui-combobox" name="payWay" s ...
- selenium 调用方法
#coding:utf-8 from selenium import webdriver url = "http://demo.testfire.net" chrome_optio ...
- Solr 创建core 从MySql数据库中导入数据
一.创建数据表和数据 在MySql数据中创建mysolrInfo表, 创建字段 id 主键,自动增加 pname :姓名 age :年龄 addtime :增加时间 增加几条数据 二.创建core 当 ...
- 使用ffmpeg截取视频封面并批量上传
需求:将视频文件压入zip包,然后上传服务器.服务器对zip解压,使用bat/shell,使用ffmpeg对视频进行封面截取.再使用OSS对视频和封面进行批量上传.最后将信息存入数据库 遇到的问题 1 ...
- 【Hadoop】如何形象描述大数据生态?
作者:千岁大王链接:https://www.zhihu.com/question/27974418/answer/39845635来源:知乎著作权归作者所有,转载请联系作者获得授权. Google内部 ...
- 【Hadoop】Hadoop MR 自定义序列化类
1.基本概念 2.Mapper代码 package com.ares.hadoop.mr.flowsum; import java.io.IOException; import org.apache. ...