8

所以这个问题困扰着我,我其实不需要这种规模,我只是好奇。最近 Chris Mccord 使用 Elixir/Phoenix 在一个盒子中获得了 200 万个持久连接。如果我在一个集群中有 3 个盒子,每个盒子处理 200 万个持久连接:

  1. 这是否意味着负载均衡器必须保持 600 万个持久连接,或者是否可以将连接转发到后端服务器并关闭负载均衡器上的连接?
  2. 我是否必须使用客户端中的某些逻辑来分配连接并避免单个入口点?类似box1.foo.com, box2.foo.com,box3.foo.com并告诉客户端连接到其中一个?

我知道答案可能是特定于应用程序的,但你能举一些例子来说明如何实现这种规模吗?同样,这只是一个思考练习,我在任何地方都找不到答案,我对水平缩放感兴趣。

谢谢你。

4

1 回答 1

5

您需要使用多个负载均衡器(或完全跳过负载均衡器)并使用轮询 dns(或加权 dns)在它们之间分配请求。这就是heroku 的路由网格和aws 的弹性负载均衡器的工作原理。您还可以在 f5 负载均衡器之类的东西上花费 $$$

于 2016-09-04T02:28:35.517 回答