我有一个使用SignalR的ASP.NET服务器应用程序。我有一个HTML5客户端。服务器向我的客户端发送一个小字节数组(大约12k)JPEG,它接收并在IMG元素中显示图像。
发送给客户端的数据频率不稳定,我担心过载。目前,我使用定时器控制定期从服务器中继消息。对于使用专用宽带连接的桌面浏览器,一切都运行顺畅,但是如果我使用移动设备浏览器,移动设备可能需要更长的时间来加载图像,无论出于何种原因(如电池连接不良和/或电池电量不足)。
理想情况下,我希望我的客户向我的服务器发送一封确认信,说“'图像已加载好,我准备接收下一个。我可以通过信号客户端方法或者说API调用来促进收到的通知。
我担心两件事:
从客户端到服务器调用的标头(等)的不必要开销
否定使用SignalR的好处
我非常倾向于只依赖服务器控件中的计时器并增加“超时”功能。对于移动设备,但我对想法持开放态度。还有其他人遇到过这种情况吗?如果有的话会有不同的方法吗?
答案 0 :(得分:3)
尝试this answer中记录的方法。
摘要:为每个JPEG分配一个ID。当客户端为下一个图像做好准备时,它会报告最后加载的图像的ID,以便服务器知道下一个要发送的图像。