大发快乐8APP下载_大发快乐8APP官方 - 大发快乐8APP下载,大发快乐8APP官方是新浪网最重要的频道之一,24小时滚动报道国内、国际及社会新闻。每日编发新闻数以万计。

[渣译文] SignalR 2.0 系列: SignalR简介

  • 时间:
  • 浏览:0

在有一种例子中,集线器的名称使用参数"H"标识,妙招名称使用参数"M"标识,发送给妙招的参数对象使用参数"A"标识。生成该消息的应用多多应用程序 是在高频实时通讯教程中实现的。

使用何种传输妙招取决于客户端浏览器是算是支持HTML5,有后后将使用旧的传输妙招。

用户指定传输的字符串常量定义如下:

SignalR也适合新型的,时要从服务器上进行高频率更新的web应用多多应用程序 ,同类实时游戏。这里另一个 多好例子:ShoorR。

给你通过启用Hub日志记录,并在浏览器的控制台中查看应用多多应用程序 使用何种传输妙招。

这是微软官方SignalR 2.0教程Getting Started with ASP.NET SignalR 2.0系列的翻译,这里是第一篇:SignalR简介

下列传输类型全是 基于Comet Web应用多多应用程序 模型的,浏览器或客户端将保持另一个 多HTTP的长连接请求,服务器也能在客户端如此明确请求的情况下将数据推送到客户端。

连接表示另一个 多发送单个、分组或广播消息的简单终结点。持久性连接API(在.NET 代码中由 PersistentConnection 类表示)也能让开发人员直接访问SignalR的底层通信协议。使用过基于连接API如WCF的开发人员将更熟悉连接通信模型。

SignalR提供了另一个 多简单的API用户创建服务器到客户端的远程过程调用(RPC),也能方便地从服务器端的.Net代码中对客户端浏览器及有些客户端平台中的的JS函数进行调用。SignalR还包括了用于管理连接(同类:连接和断开事件)及连接分组。

所有"实时"种类的web功能都也能使用SignalR来换成到你的ASP.NET应用多多应用程序 中。最常用的例子有聊天室,但大伙儿儿能做的比这要多得多。考虑以下情况:用户时要不停的刷新网页来看最新的数据;原困着在页面上通过实现长轮询来检索新数据(并显示),那你就也能考虑使用SignalR来实现了。比如:仪表板及监视型应用多多应用程序 ;相互合作型应用多多应用程序 (如多人一块儿对文档进行编辑);作业进度更新及实时呈现表单等。

协商传输妙招时要使用一定的时间及服务器/客户单的资源。原困着客户端环境已知,如此也能在启动连接时指定传输妙招来提高性能。下面的代码演示原困着已知的客户端不支持任何有些协议时,直接在连接启动时就使用Ajax的长轮询:

原困着以上条件饱含任何一根不满足,则使用长轮询。跨域连接的完正信息,请参阅怎样才能建立跨域连接。

SignalR API蕴饱含两中客户端-服务器进行通信的模型:永久连接和集线器(Hubs)。

给你使用Fiddler同类的工具来监视妙招的调用执行。下图显示了在Fiddler的日志中抓取到的另一个 多从SignalR服务器发送到Web浏览器客户端的妙招。从集线器发起调用的妙招为MoveShapeHub,被调用的妙招为updateShape。

SignalR是对客户端及服务器之间实时功能实现所时要的传输技术的抽象。SignalR首先以HTTP妙招后后后后刚开始连接,并检查WebSocket是算是可用——原困着选者 ,则升级到WebSocket的连接。WebSocket是SignalR最理想的传输妙招,原困着它也能最有效地利用服务器的内存,拥有最低的延迟及全面的底层功能(比如客户端和服务器间的全双工通讯),但它全是 最严格的要求:服务器时要使用Windows Server 2012或Windows 8操作系统,一块儿.Net框架版本4.5及以上。原困着不符合有有哪些要求,SignalR将尝试采用有些传输妙招以进行连接。

当服务器代码调用客户端放的时,服务器将发送另一个 多饱含调用妙招及参数(当对象作为妙招参数时,将被序列化为JSON来发送)的数据包主动推送给客户端。有后后客户端检查接收到的妙招名称,并在客户端定义妙招中进行匹配查找,原困着匹配成功,则执行妙招并使用反序列化的对象作为妙招参数。

要启用日志记录,换成以下命令到客户端应用多多应用程序 :

SignalR使用WebSocket传输妙招——在原困着的情况下。有后后会自动切换到旧的传输妙招(如HTTP长连接)。你当然也能直接使用WebSocket来编写你的应用多多应用程序 ,但使用SignalR原困着你将有更多的额外功能而无需重新发明的故事的故事轮子。最重要的是,给你将注意力关注在业务实现上,而无需考虑为旧的客户端单独创建兼容代码。SignalR还也能使你何必 担心WebSocket的更新,原困着SignalR原困着持续更新以支持变化的底层传输妙招,跨不同版本的WebSocket来为应用多多应用程序 提供另一个 多一致的访问接口。

大多数应用多多应用程序 使用集线器的API,该连接的API也能在以下情况下使用:

ASP.NET SignalR是为僵化 开发开发人员将实时web内容换成到应用多多应用程序 过程而提供的类库。实时web功能指的是让服务器代码也能随时主动推送内容给客户端,而全是 让服务器等待时间客户端的请求(才返回内容)。

原文:

集线器是基于API但级别更高一级的通信管道,它允许客户端和服务器上互相直接调用妙招。SignalR也能奇妙的解决跨机器的调度,让客户端轻松的调用服务器上的妙招,如同调用本地妙招一样,反之亦然。使用过基于远程调用的AIP如.Net Remoting的开发人员将更熟悉集线器模型。使用集线器,你还也能将强类型的参数传递给妙招有后后对模型绑定。

当然,给你创建只使用WebSocket传输的解决方案,SignalR提供了你原困着时要自行编写代码的所有功能,比如回退到有些传输妙招及针对更新的WebSocket实现来修改你的应用多多应用程序 。

SignalR支持“服务器推送”功能,即服务器代码也能通过使用远程过程调用(RPC)来调用浏览器中的客户端代码,而全是 当前在web上常用的请求-相应解决模型。

有关各种配置所支持的传输妙招,请参见支持的平台。(IE时要8以上,有些浏览器则是当前版本-1)

作者:帕特里克·弗莱彻 -帕特里克·弗莱彻是ASP.NET开发团队的多多应用程序 员,作家,目前正在SignalR项目工作。

英文渣水平,大伙儿儿凑合着看吧,并全是 逐字翻译的……

SignalR是开源的,给你通过GitHub访问。

通过观察控制台中的日志记录,你就能看完SignalR正在使用的传输妙招。

原文: Introduction to SignalR

以下列表显示SignalR怎样才能决定使用何种类型进行传输。

下图显示了集线器、持久连接和用于传输的底层技术之间的关系。

原困着你我应该 另一个 多客户端按照特定的顺序进行传输妙招的协商,给你指定尝试协商的顺序。下面的代码演示怎样才能首先尝试使用WebSocket并在失败后直接使用长轮询。

SignalR也能自动对连接进行管理。并给你发送广播消息到所有已连接的客户端上,就像另一个 多聊天室一样。当然除了群发外,你也也能发送到消息到特定的客户端。客户端和服务器的连接是持久的,不像传统的每次通信都时要重新建立连接的HTTP协议。

SignalR的应用也能使用服务总线,SQL SERVER原困着Redis来扩展到数以千计的客户端上。