Kubernetes lngress如何处理GKE中的并发请求

How does Kubernetes lngress handles the concurrent request in GKE

我们目前正在 kubernetes 中部署我们的 spring 引导应用程序,并使用入口作为我们的负载均衡器。我想知道 kubernetes 如何处理并发请求,是否需要启用任何配置来处理并发请求。我们有一个下游系统,它有 10 个线程,所有线程都对我们的 spring-boot application.I 进行 web 服务调用,想知道 kubernetes 如何同时处理这个请求,以及它如何将这些请求路由到 pod 我们正在使用 google kubernetes 引擎 (gke)。我们有 2 个 pod 容器 运行.enter code here

长话短说:Ingress 与并发无关。无论您部署的是 Node.js、Ruby 或 Java 还是其他语言...

,流量都会以相同的方式进入您的应用程序进程

因此,由您的应用程序运行时 (Java/SpringBoot) 决定如何处理传入连接和同时发生在这些连接上的多个请求(HTTP/1.1 vs HTTP/2 工作在这方面有很大不同,但主要是通过您使用的框架从应用程序开发人员那里抽象出来的。

Kubernetes 网络并不容易理解。 talk 很好地概述了流量在 Kubernetes 集群中的流动方式:

Ingress 只是在您的云提供商上创建一个外部负载均衡器,将流量发送回您的 "Service"(集群内部负载均衡器)。因此,要完全了解流量如何从 $CLOUD_PROVIDER 的负载均衡器到您的应用程序,您需要了解 "Kubernetes networking" 的内部工作原理——这完全取决于您的云提供商和网络插件 (CNI)它使用。