首页 > 解决方案 > API Gateway:在请求参数上使用一致的哈希选择后端

问题描述

API 网关是否支持在请求参数上使用一致的哈希来选择将请求路由到的上游后端?

类似于: https ://www.nginx.com/resources/wiki/modules/consistent_hash/

我希望所有符合特定条件的请求,通过请求的哈希标识,都被发送到同一个后端服务器。例如,如果我有 5 台不同的后端服务器,并且有 100 万最终用户在 url 中发送具有 5 个不同 ID 的请求,那么我希望每个后端服务器只处理具有 1 个 ID 的请求。

标签: amazon-web-servicesamazon-ec2aws-api-gateway

解决方案


我不直接知道 API Gateway 上的这个选项。

但是,您可以以相当复杂的方式将 API Gateway 与 ALB 集成。然后,在 ALB 中,您可以使用请求查询参数中需要所需哈希的规则配置多个侦听器。对于每个侦听器,您将为后端服务器实例分配一个目标组。

有关详细信息,请参阅文档

https://docs.aws.amazon.com/apigateway/latest/developerguide/set-up-private-integration.html

https://docs.aws.amazon.com/elasticloadbalancing/latest/network/create-listener.html

https://docs.aws.amazon.com/elasticloadbalancing/latest/network/target-group-register-targets.html


推荐阅读