我的知识很少。
websocket:服务器控制连接,消息在客户端和服务器之间流动。
webrtc:服务器控制客户端和客户端之间的连接,消息流。
我理解对吗?
例如,我想在一群人之间建立一个文本聊天应用程序 如果我需要在客户端之间记录(捕获)消息,保存到服务器,我必须使用websocket吗?
答案 0 :(得分:1)
哼哼......不。
使用WebRTC,可以在启动之前仅使用服务器建立对等体之间的通信以发送对等信息。只要可以进行对等通信,这就可以实现直接的视频和音频通信。
在聊天示例中,您将使用websockets建立与管理聊天室的服务器的持久全双工连接,并将消息广播给所有其他房间参与者。此外,您可以提供"直接聊天"选项,用户可以直接交换消息,甚至可以使用WebRTC进行语音/视频聊天。
同样,对等通信取决于它们之间的网络条件,例如,如果其中一个使用NAT遍历,则信令服务器无法确定如何连接它们,因此中继服务器应该是使用(因此,它不会是对等通信)。
粗略地说,WebRTC通过UDP实现对等通信,websockets使用TCP。 WebRTC尝试启用对等体之间的通信(STUN),但如果无法进行此类通信,则可能会回退到中继服务器方法(TURN)。