Socket.io 昂贵的aws负载平衡器,可能安装错误

Socket.io 昂贵的aws负载平衡器,可能安装错误,socket.io,amazon-elb,Socket.io,Amazon Elb,不久前,我的express Web服务器需要HTTPS支持。我找到了一个教程,教我一个很酷的技巧来实现这一点。他们基本上向我解释了AWS负载平衡器可以将HTTPS重定向到HTTP 因此,我首先创建了一个负载平衡器 然后将HTTPS重定向到HTTP。传统的HTTP,我只是将80重定向到80。我在端口1337上安装了一个websocket(socket io)(我计划在不久的将来将其更改为端口1338) 为了清楚起见。我并不真正需要负载平衡器,因为我实际上只有一个AWS实例。但是使用这种设置,我

不久前,我的express Web服务器需要HTTPS支持。我找到了一个教程,教我一个很酷的技巧来实现这一点。他们基本上向我解释了AWS负载平衡器可以将HTTPS重定向到HTTP

因此,我首先创建了一个负载平衡器

然后将HTTPS重定向到HTTP。传统的HTTP,我只是将80重定向到80。我在端口1337上安装了一个websocket(socket io)(我计划在不久的将来将其更改为端口1338)

为了清楚起见。我并不真正需要负载平衡器,因为我实际上只有一个AWS实例。但是使用这种设置,我不必费心处理HTTPS证书文件,也不必升级我的Web服务器。一开始它帮我省去了很多麻烦

然后今天早上,我收到账单,发现这个负载平衡技巧的标价大约为22美元/月(一个昂贵的端口转发技巧

我可能必须摆脱这个负载平衡器。但是我想知道,也许我在配置中做错了什么

奇怪的是,对于一个仍在开发中的网络应用来说,收费如此之高。所以,我想知道我的设置是否有问题。这就引出了下面的问题

我注意到我实际上使用的是旧的ELB设置“经典负载平衡器”。它实际上声明这个设置不支持WebSocket,这有点奇怪

我的web应用程序承载一些静态网页(角度),但下载后,所有流量都使用socket.io websockets。尽管AWS文档说WebSocket不受支持,但它似乎工作正常。除非

现在,socket io是一个非常聪明的东西。当它不能使用现代WebSocket时(例如,因为webbrowser不支持它),它会退回到一种HTTP轮询。我猜这意味着从负载平衡器的角度来看,它每分钟可以创建100次访问。现在,我想知道这是否对指控有影响

我很长的问题归结为一个简单的问题您认为升级我的负载平衡器会减少计算的“负载平衡器小时数”吗?

编辑 以下是一些ELB指标。它们太复杂了,我无法得出结论。但也许你们中的一些专家可以。:)


如果您只使用https,为什么不使用letsencrypt呢。它是免费的,而且非常容易使用。它甚至会将这些设置注入您的web服务器,甚至可以每3个月自动轮换您的证书。编辑:更多信息我实际上为我的其他非aws Web服务器做了这项工作,效果很好。这当然是一个很好的长期解决方案。但AWS实际上为我提供了免费的亚马逊证书,这似乎比letsencrypt更值得信赖,这让我觉得有点浪费。所以,我很想让AWS证书长期有效。只是现在有很多工作。:)该法案正在生效,因为有两个原因,我们认为使用ELB的方法更好。首先,它是一种技术不可知论,在使用自制或前沿技术时,它可能是一个巨大的优势。第二,您可以更轻松地调试请求(到达服务器后就可以不加密),并且可以轻松地扩展到多个实例。@当然,亚马逊为公共域提供有效的证书。@MarkusAppel我同意,如果它得到很好的利用,那么这笔钱是值得的。但是,如果loadbalancer的成本是所有已解决实例的总成本的数倍,那么就有问题了。要么定价不合理,要么我的设置有问题。-->如果设置很好,那么我必须找到一个替代方案,这对于所花费的时间来说是不幸的。它是免费的,而且非常容易使用。它甚至会将这些设置注入您的web服务器,甚至可以每3个月自动轮换您的证书。编辑:更多信息我实际上为我的其他非aws Web服务器做了这项工作,效果很好。这当然是一个很好的长期解决方案。但AWS实际上为我提供了免费的亚马逊证书,这似乎比letsencrypt更值得信赖,这让我觉得有点浪费。所以,我很想让AWS证书长期有效。只是现在有很多工作。:)该法案正在生效,因为有两个原因,我们认为使用ELB的方法更好。首先,它是一种技术不可知论,在使用自制或前沿技术时,它可能是一个巨大的优势。第二,您可以更轻松地调试请求(到达服务器后就可以不加密),并且可以轻松地扩展到多个实例。@当然,亚马逊为公共域提供有效的证书。@MarkusAppel我同意,如果它得到很好的利用,那么这笔钱是值得的。但是,如果loadbalancer的成本是所有已解决实例的总成本的数倍,那么就有问题了。要么定价不合理,要么我的设置有问题。-->如果设置是好的,那么我必须找到一个替代方案,这是不幸的时间花费。