【发布时间】:2013-09-05 22:46:22
【问题描述】:
我有一个在 Ubuntu 12.04 EC2 实例上运行的 Web 套接字服务器。我的 Web 套接字服务器是用 Python 编写的,我使用的是 Autobahn WebSockets。
我有一个 JavaScript 客户端,它使用 WebRTC 捕获网络摄像头帧并将它们发送到网络套接字服务器。
我的网络服务器(托管 JavaScript 的地方)未部署在 EC2 上。 python web socket服务器只做视频帧处理,运行在TCP和9000端口上。
我的问题:
JS 客户端可以连接到 web 套接字,服务器接收并处理网络摄像头帧。但是,在 5 或 6 分钟后,客户端停止发送帧并显示以下消息:
到 'ws://x.x.x.x:9000/' 的 WebSocket 连接失败:发送失败 WebSocket 框架。
当我打印错误数据时,我得到“未定义”。
当然,当我在本地测试环境中运行服务器时,这种情况永远不会发生。
【问题讨论】:
-
原来问题不是因为运行在Amazon EC2上的服务器。经过更多测试,该问题仅在 JS 客户端在谷歌浏览器上运行时出现。如果客户端运行在 FireFox 上,则不存在此问题。目前还不确定问题的根源。一旦我弄清楚来源和解决方案,我会更新帖子。
标签: python amazon-web-services amazon-ec2 websocket