【发布时间】:2020-02-19 00:29:10
【问题描述】:
假设我有这个 HTTP2 服务,它有一个用户列表和这个用户的头发颜色,在内存和数据库中。
现在我想将其扩展到多个节点 - 但是我不希望同一个用户位于两个不同的服务器内存中 - 每个服务器都应处理这些特定用户。这意味着我需要通知负载均衡器正在处理每个用户的位置。在除垢的情况下,我需要通知此用户无处可去,并且可以路由到任何服务器或通过给定的规则 - 使用较少内存的 IE 服务器。
是否有人知道 ALB 负载均衡器是否支持该功能?我正在考虑使用基于查询字符串参数的路由的一条路径,因此我可以在请求本身中通知 destination_node = (int)user_id % 4 之类的信息,以防我有 4 个节点 - 这在概念证明中效果很好,但这会导致几个问题:
- 服务本身需要知道有多少实例需要平衡。
- 我不能保证平衡,它基本上是基于运气的平衡。
解决这个问题的首选方法是什么,或者解决这个问题的常用方法是什么? AWS ELB 是否支持开箱即用?我试图避免编写自己的平衡器,这是一个跟踪哪些服务正在处理哪些用户的中间件,其职责是在这些服务器之间分配请求。
【问题讨论】:
标签: amazon-ec2 amazon-elb