SignalR类似与JavaScript实时框架,如。SignalR能够完成客户端向服务器的异步通信,并同时支持服务器向浏览器客户端推送事件。SignalR的连接通过 API完成,而如果,它会透明地回落为(long-polling technique)。如果开发人员想使用Signal,需要在客户端层使用像jQuery的JavaScript框架,并在服务端层使用.NET代码编写应用和服务。SignalR具有多种编程模型( 和),它为开发人员提供了连接、消息接收群以及事件处理器的不同层次的访问。
SignalR显示已经可在单台机器上扩展至上万个连接,同时可以通过service bus和redis 以及sql server 实现可扩展的集群部署,具体参看。
我们可以下载安装包(),安装完毕以后,就可以在 Visual Studio里看到新的项目模板。
SignalR 包括一些针对不同功能的类库,下载安装可以看到一下几个主要项目:
- Microsoft.AspNet.SignalR – meta package (use this)
- Microsoft.AspNet.SignalR.Client – .NET 4 and WinRT client
- Microsoft.AspNet.SignalR.JS – The Javascript client.
- Microsoft.AspNet.SignalR.Core – Core server package with no host implementation
- Microsoft.AspNet.SignalR.Hosting.AspNet – The ASP.NET host
- Microsoft.AspNet.SignalR.Hosting.Utils – utilities for signalr (signalr.exe)
- Microsoft.AspNet.SignalR.Redis – Redis message bus implementation
- Microsoft.AspNet.SignalR.ServiceBus – Service bus message bus implementation
GItHUb上的地址:
安装也很简单,另外一种方式可以通过控制台安装:To install Microsoft ASP.NET SignalR, run the following command in the
PM> Install-Package Microsoft.AspNet.SignalR
ASP.NET SignalR 目前还在持续不断更新完善中,这个框架目前还没正式集成到.NET框架里。不过作为Web开发,实时同时,客户端和服务端双工通信这也是非常重要的需求。无论是传统Web网站还是移动平台,这个框架应该都会对我们的开发工作带来很大便利。