API 网关位于应用程序负载均衡器前面?

问题描述 投票:0回答:2

我需要设计一个网络应用程序,并需要我对基础部分的建议。 我已决定使用应用程序负载均衡器,但不确定是否应该使用 API 网关作为应用程序的入口点,还是将应用程序负载均衡器用作入口点?

另外,我不确定入口点是否是应用程序负载均衡器,因为它位于私有 vpc 中,如何将公共互联网中的应用程序客户端连接到它?

如果是的话,请说明在应用程序负载均衡器之前使用 API 网关的优点和必要性。

web-applications microservices aws-api-gateway aws-cli amazon-elb
2个回答
3
投票

我需要设计一个网络应用程序,并需要我对基础部分的建议。我已决定使用应用程序负载均衡器,但不确定是否应该使用 API 网关作为应用程序的入口点,还是将应用程序负载均衡器用作入口点?

如果您只需要根据路径将传入请求路由到后端,ALB 就足够了。一般来说,ALB 比 APIGateway 便宜。如果您需要一些服务功能(身份验证、限制、缓存等),如果您不使用 ApiGateway,则需要在后端支持它。

另外,我不确定入口点是否是应用程序负载均衡器,因为它位于私有 vpc 中,如何将公共互联网中的应用程序客户端连接到它?

您的意思是您的后端服务主机运行在私有 VPC 中吗?如果是这种情况,ALB 无法直接将请求转发到私有 VPC 内的主机。您可以选择 1) 在您的主机前面使用 Apigateway 2) 拥有一组以 ALB 为前端的代理服务器,该代理服务器会将请求转发到私有 VPC 内的 NLB。您的实际服务主机将位于 NLB 后面。


0
投票

Vishal很好地解释了问题1。因此,我要谈谈第二点。

我不确定入口点是否是应用程序负载均衡器,因为它 在私有 vpc 中,如何在公共环境中连接应用程序的客户端 互联网吗?

根据我的理解,您的 ALB 位于私有 VPC 内部,它平衡私有子网中的流量。因此,您可以在 ALB 前面设置一个 API 网关,将对您的私有 VPC 资源的访问扩展到 VPC 边界之外。然后,您应该创建某种形式的私有集成(例如,VPC 链接)(这将基于您将使用的云服务提供商)来封装 API 网关和目标 VPC 资源(在本例中为 ALB)之间的连接。

© www.soinside.com 2019 - 2024. All rights reserved.