WebRTC 没有解决信令问题(即使我们确实以JSEP作为起点),但据我了解,它是这样工作的:
- 客户端告诉服务器它在 X 可用
- 服务器保存该信息并将其映射到标识符
- 其他客户端来并发送标识符以从第一个客户端获取连接信息
- 其他客户端使用它来创建它的一个连接信息并将其发送到服务器
- 服务器将此发送给第一个客户端
- 两个客户现在都可以交谈
这一切都很好,但是如果第三个客户到达会发生什么?
你必须重做所有的事情。假设前两个客户端仍然连接到服务器,等待第三个客户端发出信号,然后再次开始交换过程,以便他们可以获得第三个客户端连接信息。
那么这是否意味着您需要为每个客户端(长轮询、websocket 等)建立到服务器的永久链接?如果是,有没有办法有效地做到这一点?
因为如果我必须设置 nodejs 或 tornado 并使其扩展到我的用户数量,我看不到使用 webRTC 的意义。这对我来说听起来不是很p2pish。
请告诉我我错过了什么。