我遇到了一个问题,我无法使用Google技术完全解决问题 .
我需要通过SSL提供> 500个并行websocket连接 . 客户端理想地连接到wss://wss.mydomain.com并由实例提供服务 .
Option 1 :我目前使用自定义运行时托管VM来部署运行启用SSL的websocket服务器的Dockerfile . 部署托管VM实例会生成一个GCE实例 . 我使用Google Cloud DNS将wss.mydomain.com指向GCE实例的这一个IP地址 .
问题:我可以't connect to wss.mydomain.com (not even my-mvm.appspot.com) because websocket connections (over SSL) don'转发到托管VM实例 . 提出了一个issue,但没有看到任何帮助我的回应 . 其他人也得出了这个结论here和here .
因此,如果托管虚拟机不是答案,我可以在Google Cloud 架构中的哪个位置找到它?
Option 2 :由于managedVM似乎是GCE的一个绝对涂层,也许我可以保留当前已经提供我的GCE实例的设置并自己添加负载 balancer ?
Option 2a :HTTP(S)负载均衡不允许websocket流量,因此一个是out .
Option 2b :网络负载 balancer 可行 . 我需要将实例分配给目标池才能工作 . 是否可以自动将新创建的托管VM实例分配给目标池,以便它们加入负载 balancer ?如果是这样,这将是问题的完整解决方案吗?
Option 3 :我是'd like to keep using my Dockerfile for the setup. So I'我正在看容器引擎 . 我根本没有经验 .
在我涉足另一个雷区之前,哪个选项最有可能解决我的问题?也许还有另一个我没想过的选择 .
1 回答
选项2b也将被淘汰,因为托管VM流量仍然通过appspot.com前端,该前端不会将websocket流量转发到实例(如链接的其他问题中所述) .
如果你想让它现在正常工作,我建议你首先使用带有autoscaling的GCE实例和网络负载 balancer . 如果您希望使用托管虚拟机获得相同级别的可伸缩性,那么您可能希望开始阅读Container Engine并部署您的应用程序Dockerized .