谷歌云中的负载平衡websocket连接



我遇到了一个使用谷歌技术无法完全解决的问题。

我需要通过SSL提供超过500个并行websocket连接。理想情况下,客户端连接到wss://wss.mydomain.com并得到一个实例的服务。

选项1:我目前使用一个自定义的运行时托管虚拟机来部署一个Dockerfile,该文件运行启用SSL的websocket服务器。部署托管虚拟机实例会产生一个GCE实例。我使用谷歌云DNS将wss.mydomain.com指向GCE实例的这个IP地址。

问题:我无法连接到wss.mydomain.com(甚至不是我的mvm.appspot.com),因为(通过SSL的)websocket连接不会转发到托管VM实例。提出了一个问题,但没有看到任何对我有帮助的回应。其他人也在这里和这里得出了这个结论。

因此,如果托管虚拟机不是答案,我在谷歌云架构中的哪里可以找到它?

选项2:由于managedVM似乎是GCE的一个建议涂层,也许我可以保留已经提供GCE实例的当前设置,并自己添加负载平衡?

选项2a:HTTP(S)负载平衡不允许websocket流量,因此无法使用。

选项2b:网络负载平衡可以工作。我需要将实例分配给一个目标池,这样才能工作。新创建的托管虚拟机实例是否可以自动分配给目标池,以便它们加入负载平衡?如果是这样的话,这会是一个完整的问题解决方案吗?

选项3:我想继续使用我的Dockerfile进行设置。所以我在看集装箱引擎。我在这里一点经验都没有。

在我涉足另一个雷区之前,哪种选择最有可能为我的问题提供解决方案?也许还有另一个我没有想到的选择。

选项2b也将退出,因为托管虚拟机流量仍在通过appspot.com前端,该前端不会将websocket流量转发到实例(如链接的其他问题中所述)。

如果你想让它现在就工作,我建议你从使用带有自动缩放和网络负载平衡的GCE实例开始。如果你想要与托管虚拟机相同级别的可扩展性,那么你应该开始读取容器引擎并部署你的应用程序Dockerized。

相关内容

  • 没有找到相关文章

最新更新