【问题标题】:How to distribute persistent connection across a Elixir/Phoenix cluster?如何跨 Elixir/Phoenix 集群分布持久连接?
【发布时间】:2016-09-04 01:12:35
【问题描述】:

所以这个问题困扰着我,我实际上并不需要这种规模,我只是好奇。 Recently Chris Mccord got 2 million persistent connections in a single box using Elixir/Phoenix。如果我在一个集群中有 3 个盒子,每个盒子处理 200 万个持久连接:

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

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

谢谢。

【问题讨论】:

    标签: erlang cluster-computing load-balancing elixir horizontal-scaling


    【解决方案1】:

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

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-04-15
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多