c# – 用于实时环境中的通信的WCF或套接字?
我有一个场景,我需要跨2个客户端发送一系列数据.
数据包括序列化XML,其中包含其他客户端需要响应的命令. 我还需要通过网络发送图像,因为我需要提供视频/音频聊天形式的聊天工具. 我想为两者提供单一的通信媒体,因为消息/命令的数量可能很少. WCF或套接字? 解决方法
WCF是用于构建面向服务的应用程序的API.我不认为视频/语音聊天就是这种应用.
首先,您需要为此类应用程序提供哪些传输功能?我对语音/视频传输的了解非常差,但我希望: >客户端连接聊天服务器,发送语音/视频数据,接收其他客户端语音/视频数据的双工通信. 因此,通过简单描述这三个期望,我已经看到了问题. WCF内置Net.Tcp绑定does not allow duplex communication and streaming together.还要注意,通过WCF进行Net.tcp通信的性能要比普通的socket通信差很多.这是因为WCF简化了很多事情,但这些简化和概括减慢了处理速度. 同样基于所选算法this可能是个问题. Here您可以在Silverlight 4中找到一些视频聊天的描述.Silverlight允许WCF和net.tcp绑定,但仍然在套接字上开发通信. Here您可以找到广泛使用的IP语音协议的描述 – 用于数据传输的RTP和用于协调和QoS的RTCP.这些协议也用于视频传输.通过谷歌搜索我找到了implementation for .NET(我不知道实现有多好,我只是用google …) (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |