轻设计 / 轻生活 / 轻日记 / 轻梦想 === zhoumojianshe ===
© 优特良品&优特建站出品 | Powered by YOUTIY
苏ICP备13018047号-1
利用SignalR实现服务端实时向客户端推数据(PUSH)
TAGS: 后端设计
一、什么是SignalR?
SignalR 是一个ASP .NET 下的类库,可以在ASP .NET 的Web项目中实现实时通信。
什么是实时通讯?
就是当所连接的客户端变得可用时服务器代码可以立即向其推送内容,而不是让服务器等待客户端请求新的数据。当WebSockets可用时(即浏览器支持Html5,SignalR使用WebSockets,当不支持时SignalR将使用其它技术来保证达到相同效果。

二、主要用途:
它出现的主要目的是实现服务器主动推送(Push)消息到客户端页面,这样客户端就不必重新发送请求或使用轮询技术来获取消息。
可以用在聊天室、看板、单点通讯、多点通讯,甚至可以结合其他技术用来做视频聊天。当然也有其他用途。

三、实现机制:

SignalR 的实现机制与 .NET WCF是相似的,都是使用远程代理来实现。在具体使用上,有两种不同目的的接口:PersistentConnection 和 Hubs,其中 PersistentConnection 是实现了长时间的 JavaScript 轮询(类似于 Comet),Hub 是用来解决实时信息交换问题,它是利用 Javascript 动态载入执行方法实现的。SignalR 将整个连接,信息交换过程封装得非常漂亮,客户端与服务器端全部使用 JSON 来交换数据。

参考链接:https://www.cnblogs.com/everylittlebit/p/5351623.html

周末
2022-03-10 23:01:23
标签云
网页设计 精致慢生活 感悟思语 我的旧年华
加偶微信