在Kubernetes上对Envoy代理,HAProxy和NGINX性能进行基准测试

本文在Kubernetes上对比了Envoy、HAProxy和NGINX作为边缘代理的延迟性能。在100 RPS、500 RPS和1000 RPS的基准测试中,发现Envoy(通过Ambassador Edge Stack)在大多数情况下表现出最低的延迟,而HAProxy在高负载下出现显著延迟峰值。NGINX性能优于HAProxy,但在扩展和路由配置改变时也会出现延迟增加。
摘要由CSDN通过智能技术生成

在典型的Kubernetes部署中,所有到Kubernetes服务的流量都流经ingress代理——从Internet到后端服务的流量。这样,ingress就在您提高性能的关键路径上。有多种基准测试和衡量性能的方法。

衡量ingress代理性能的最常见方法可能是原始吞吐量。在这种类型的测试中,通过代理发送越来越多的流量,并且测量代理可以处理的最大流量。典型的测量方法是以每秒请求(RPS)为单位来测量性能。

但是,实际上,大多数组织不太可能推动任何现代代理的吞吐量限制。此外,吞吐量呈线性增长——当代理服务器的吞吐量最大化时,可以部署第二个实例以有效地使吞吐量增加一倍。

本文探讨了另一种类型的性能:延迟。通过代理的每个请求都会在代理解析请求并将请求路由到适当的目的地时引入少量延迟。与吞吐量不同,仅通过扩展代理服务器的数量是无法改善延迟。而且,至关重要的是,延迟会对您的关键业务指标产生重大影响。

Kubernetes的Edge Proxies

可以说,当今最流行的三个L7代理是Envoy Proxy,HAProxy和NGINX。在Kubernetes中,这些代理通常是通过控制平面配置的,而不是直接部署的。在本文中,在Kubernetes上测试了三种流行的开源控制平面/代理组合:

  • ingress-nginx是Kubernetes最常见的入口,建立在NGINX之上。我们使用nginx-ingress-controller:0.25.0,它基于OpenResty 1.15.8,而后者又基于NGINX 1.15.8。

  • HAProxy ingress controller(https://github.com/jcmo

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值