在ECS集群中创建Fargate服务时,我使用的是应用程序负载平衡器,而且我还使用的是服务发现,因此我的服务具有终结点。我的问题是:我应该将请求发送到服务发现提供的端点还是负载平衡器?
此外,服务发现如何决定将请求发送至哪个任务?
我已经搜索过AWS文档,但找不到该问题的直接答案。
答案 0 :(得分:0)
服务发现用于网络级别的通信。 用于客户端-服务器的负载均衡器,或者通过Internet通信进行负载均衡。
因此,如果要从VPC外部发送请求,则将使用负载均衡器。
或
如果要在VPC中发送请求,则可以使用服务发现。
服务发现如何决定应将其发送给哪个任务 要求?
因此Route53具有针对每个Fargate服务的IP。
要了解两种服务如何一起工作,请在此图中查看
因此,对于内部通信而言,最好使用服务发现来节省时间,因为呼叫在同一网络上。
为了使客户端与服务器之间的通信更好,请使用Loadbalancer。
答案 1 :(得分:0)
负载均衡器提供您可以向其发送请求的端点。负载均衡器负责将请求路由到不同的任务,您实际上无法控制它。
另一方面,服务发现是一项功能,允许服务通过名称/ URL相互查找。在微服务的情况下,这使得内部通信更加容易,在这种情况下,主服务器可以知道所有服务的发现URL并在微服务之间传递消息