signalR和大数据传输

时间:2012-11-16 23:40:17

标签: wcf webserver client signalr

我打算在客户端和服务器之间使用signalR进行一些实时通信。有时候客户端需要向服务器发送大约15MB的大数据。

1)看起来signalR不是用于发送大数据。他们是否在最近的版本中添加了对发送大数据的支持?

2)我可以在邮件中发送的最大数据数组是多少?

3)分割大数据并将其作为较小的块发送是否太慢了?

4)替代选项是什么?我可以研究一下这个例子吗?

5)我可以运行WCF服务来传输大数据和signalR以进行实时通信吗?

3 个答案:

答案 0 :(得分:6)

发送SignalR将使用错误的工具进行工作。在这种情况下,最好的办法是通过SignalR发送一条特定的消息,该消息将URL作为参数传递。然后通过使用任意数量的方法在客户端中触发基于标准HTTP GET的下载来处理。

答案 1 :(得分:0)

如果你真的需要使用SignalR,你可以在以下网址查看我的答案: How to send big data via SignalR in .NET client

您可以通过将MaxIncomingWebSocketMessageSize设置为null来在Startup.cs中添加一条使消息大小为“无限”的行:

public class Startup
{
    public void Configuration(IAppBuilder app)
    {
    app.MapSignalR();
    GlobalHost.Configuration.MaxIncomingWebSocketMessageSize = null;
    }
}

} 我的数据量约为200kb,10条消息一致发送。如果每秒发送更多数据,我不知道它有多好。

答案 2 :(得分:0)

分割数据并发送。您可以发送后台模式,也可以正常发送 使用压缩技术,以便可以减小数据大小。