是否有可能在 aws NLB 后面实现基于路径的路由?

is it possible to achieve path based routing behind aws NLB?

我有一个用例:- 我的网络服务器有很多流量,所以我需要更好的性能和更好的延迟,但是流量有 2 条路径来了。

根据我的理解,这可以通过 aws NLB 实现,它可以扩展到每秒 1000 次请求和 100 毫秒子延迟

但是我有www.jatin.com www.jatin.com/somepath,这意味着它需要aws ALB支持的基于路径的路由。

I need performance as well as path based routing NLB 可以实现吗?

achievable with NLB?

遗憾的是不可能。 url、路径或 dns 主机名的概念仅为 Layer 7 - Application of the OSI model. However, NLB operates at layer 4 - transport 定义。随后,NLB 无法区分任何 url 个域名或路径。

据我所知,您可以获得的 NLB 传入流量的唯一分布是基于端口号。因此,您可以让一个侦听器用于端口 80,另一个侦听器用于端口 88、443,依此类推。这将起作用,因为端口,就像 IP 地址一样,是第 4 层的一部分。

只有ALB在第7层和部分CLB运行,因此它可以进行基于路径的路由。因此,您要么必须使用 ALB,要么尝试寻找可以部署在 AWS 上的第三方负载均衡器。