我们预计我们的应用程序会有巨大的流量激增 - 约1000分钟的Websocket keepalive连接每秒开启约15分钟。我们希望通过ELB路由它们,但担心由于亚马逊不能及时提供足够的ELB实例,我们可能会丢失一些流量(尚未运行测试)。我的问题是 - 你能强制他们提供至少x个ELB实例吗?您可以控制多个Amazon Elastic Load Balancer实例吗?
The docs建议您每个ELB实例只能获得〜64k个端口,我们总共需要约1m。
也许我错误地认为这是必要的,而且64k就足够了,因为ELB实例一旦建立就不会坐在websocket连接的中间(考虑到我们的流量浪涌特性)。澄清这一点也会有帮助。
编辑:ELB实例似乎坐在连接的中间。当我关闭ELB监听器时,连接就会消失(我的websocket服务器将其视为客户端关闭)。
64k端口?即标准端口范围。您可以接收每个端口的多个连接。您将只在标准Web套接字端口上创建一个侦听器。连接排水也应该打开。 – datasage
ELB部署中的单个节点只能转发64k个并发连接...但是再次,与单个后端实例的终止能力相同。在这种情况下,ELB的缩放并不是我最关心的问题。 –