SignalR支持多种服务器和客户端配置。此外,每种传输方式都有自身的要求限制;如果某种传输方式不被系统支持,SignalR能够优雅地将故障转移到其他类型的传输方式。关于SignalR所支持的传输方式的详细信息,参见: Transports and Fallbacks

系统要求

SignalR服务器组件可以被多种服务器配置所支持。本节介绍所支持的操作系统,.Net框架,IIS及其他组件。

支持的服务器操作系统

SignalR的服务器组件被以下服务器和客户端操作系统支持。

  • Windows Server 2012
  • Windows Server 2008 R2
  • Windows 8
  • Windows 7
  • Windows Azure

请注意,如果你想让SignalR使用的WebCosket,则需要Windows Server 2012或Windows 8 操作系统(WebSocket也可以被Windows Azure网站支持,前提是网站的.Net框架版本为4.5,并且在配置页中已经启用了WebSockets)

支持的服务器.Net框架版本

SignalR 2.0仅支持.Net 框架4.5,检查Recommended Updates以提高可靠性、兼容性、稳定性及性能。

支持的服务器IIS版本

SignalR被以下版本的IIS支持。

  • IIS 8 或 IIS 8 Express。
  • IIS 7 和 IIS 7.5,需要extensionless URLs支持。
  • IIS必须在集成模式下运行,不支持经典模式。当IIS运行在经典模式时,使用服务器发送事件可能带来30秒的消息延迟。
  • 托管应用程序必须运行在信任模式下。

请注意,如果使用客户端操作系统,比如用于开发(Windows 7 或 8),则不应使用IIS或Cassini的完整版本。因为客户端有10个并发连接的限制,要达到这一限制非常容易,因为连接是非常短暂的而且经常重新建立。并且在连接使用过后并不会立即销毁。你应当使用IIS Express。

还需要注意如果你想要SignalR使用WebSocket,则必须使用IIS 8 或IIS 8 Express,服务器必须使用Windows 8 , Windows Server 2012并且IIS必须启用了WebSocket,关于在IIS中启用WebSocket,请参阅IIS 8.0 WebSocket Protocol Support

客户端系统需求

SignalR可以用于各种客户端平台。本节介绍SignalR在Web浏览器、Windows桌面应用程序,Silverlight应用程序和移动设备中的系统要求。

Web浏览器

SignalR可以在各种Web浏览器中使用,但通常情况下,只有支持最新的两个版本。

应用程序在浏览器中使用SignalR必须使用jQuery版本1.6.4,或主要版本(如1.7.2,1.8.2,1.9.1等)。

SignalR在以下浏览器中可用:

  • IE8 , 9 , 10 , 11 桌面及移动,Win8的Modern,版本都支持。
  • 火狐:当前版本-1,Win及Mac版本。
  • Chrome:当前版本-1,Win及Mac版本。
  • Safari:当前版本-1,Mac及iOS版本。
  • Opera:当前版本-1,仅限Win版本。
  • 安卓浏览器。

除了浏览器要求,SignalR所使用的传输方式也有各自的要求,如下表:

传输方式 IE Chrome(Win或iOS) FF Safari(OSX或iOS) 安卓
WebSockets 10+ 当前-1 当前-1 当前-1 不支持
Server-Sent Events 不支持 当前-1 当前-1 当前-1 不支持
ForeverFrame 8+ 不支持 不支持 不支持 4.1
Long Polling 8+ 当前-1 当前-1 当前-1 4.1

不支持的浏览器

虽然在旧版本的浏览器中运行SignalR中可能不会有重大问题,但我们不会主动去测试SignalR在旧浏览器中的运行情况,也不会解决同旧浏览器的兼容问题。

请参考配置及测试列表: our testing matrix

Windows桌面和Sliverlight应用程序

除了在网络浏览器上运行,SignalR也可以被配置使用在独立的Windows客户端或Silverlight应用程序中。要使用SignalR,Windows桌面和Silverlight应满足以下系统需求:

  • 在Win XP SP3及以上,应用程序使用.Net 框架版本4。
  • 在Windows Vista及以上,应用程序使用.Net 框架版本4.5。

除了操作系统及框架版本需求,SignalR对于传输方式也有各自的要求,如下表:

传输方式 .Net应用程序 Silverlight
WebSockets Win 8及.Net 4.5以上 不支持
ForeverFrame 不支持 不支持
Server-Sent Events .Net 4以上 5以上
Long Polling .Net 4以上 5以上

Windows存储和Windows Phone应用程序

SignalR可以用在Windows存储和Windows Phone应用程序中,对于传输方式也有各自的要求,如下表:

传输方式 Windows存储/.Net Windows存储/JS Windows Phone/IE Windows不支持 Phone/.Net
WebSockets 不支持 Win8以上 8以上 不支持
ForeverFrame 不支持 Win8以上 7.5以上 不支持
Server-Sent Events Win8以上 不支持 不支持 8以上
Long Polling Win8以上 Win8以上 7.5以上 8以上

推荐更新

推荐以下SignalR服务器更新:

  • .Net框架4.5的更新程序,在这里
  • 微软会定期发布ASP.NET的快速更新补丁,应当及时安装它们。

  原文地址:http://www.cnblogs.com/Bce-/p/3579774.html

[Asp.net 开发系列之SignalR篇]专题五:SignalR支持的平台的更多相关文章

  1. 【Windows10 IoT开发系列】配置篇

    原文:[Windows10 IoT开发系列]配置篇 Windows10 For IoT是Windows 10家族的一个新星,其针对不同平台拥有不同的版本.而其最重要的一个版本是运行在Raspberry ...

  2. openlayers5-webpack 入门开发系列一初探篇(附源码下载)

    前言 openlayers5-webpack 入门开发系列环境知识点了解: node 安装包下载webpack 打包管理工具需要依赖 node 环境,所以 node 安装包必须安装,上面链接是官网下载 ...

  3. leaflet-webpack 入门开发系列一初探篇(附源码下载)

    前言 leaflet-webpack 入门开发系列环境知识点了解: node 安装包下载webpack 打包管理工具需要依赖 node 环境,所以 node 安装包必须安装,上面链接是官网下载地址 w ...

  4. [Asp.net 开发系列之SignalR篇]专题一:Asp.net SignalR快速入门

    一.前言 之前半年时间感觉自己有点浮躁,导致停顿了半年多的时间没有更新博客,今天重新开始记录博文,希望自己可以找回初心,继续沉淀.由于最近做的项目中用到SignalR技术,所以打算总结下Asp.net ...

  5. [置顶]【实用 .NET Core开发系列】- 导航篇

    前言 此系列从出发点来看,是 上个系列的续篇, 上个系列因为后面工作的原因,后面几篇没有写完,后来.NET Core出来之后,注意力就转移到了.NET Core上,所以再也就没有继续下去,此是原因之一 ...

  6. openlayers4 入门开发系列之风场图篇

    前言 openlayers4 官网的 api 文档介绍地址 openlayers4 api,里面详细的介绍 openlayers4 各个类的介绍,还有就是在线例子:openlayers4 官网在线例子 ...

  7. openlayers4 入门开发系列之热力图篇(附源码下载)

    前言 openlayers4 官网的 api 文档介绍地址 openlayers4 api,里面详细的介绍 openlayers4 各个类的介绍,还有就是在线例子:openlayers4 官网在线例子 ...

  8. Android Metro风格的Launcher开发系列第三篇

    前言: 各位小伙伴,又到了每周更新文章了时候了,本来是周日能发出来呢,这不是赶上清明节吗,女王大人发话了,清明节前两天半陪她玩,只留给我周一下午半天时间写博客,哪里有女王哪里就有压迫呀有木有!好了闲话 ...

  9. cesium-webpack 入门开发系列一初探篇(附源码下载)

    前言 cesium-webpack 入门开发系列环境知识点了解: node 安装包下载webpack 打包管理工具需要依赖 node 环境,所以 node 安装包必须安装,上面链接是官网下载地址 we ...

随机推荐

  1. keepalived健康检查方式

    keepalived对后端realserver的健康检查方式主要有以下几种: TCP_CHECK:工作在第4层,keepalived向后端服务器发起一个tcp连接请求,如果后端服务器没有响应或超时,那 ...

  2. FIFO

    FIFO存储器 FIFO是英文First In First Out 的缩写,是一种先进先出的数据缓存器,他与普通存储器的区别是没有外部读写地址线,这样使用起来非常简单,但缺点就是只能顺序写入数据,顺序 ...

  3. vs2015里给c#添加轮廓折叠功能

    轮廓折叠,在看代码时非常有用的功能,可以暂时屏蔽大段不相关的if/else分支 记得以前老版vs里是自带这功能的,c++和c#都有 但不知为啥最新的2015里c#没有了,搜了下原来是要装插件: htt ...

  4. Scala学习笔记一

    首先是安装Scala 下载Scala进行安装 http://www.scala-lang.org/ 安装好scala后,为scala配置系统环境参数 新建环境变量SCALA_HOME,值为scala安 ...

  5. cassandra的写过程

    如下: Message, get a new request,type:QUERY      //channelRead0函数 Message, get a new request,customPay ...

  6. C#实现:给定[0-9]数组,求用数组组成的任意数字的最小值

    class Program { static void Main(string[] args) { List<, , , , }; c.Sort(); ); Console.WriteLine( ...

  7. Windows结构化异常

    不错的总结: http://hi.baidu.com/wangxvfeng101/item/518f6efdab4e5616ff35820e http://www.vckbase.com/index. ...

  8. js二维数组与字符串

    1. 二维数组:数组中的元素,又引用了另一个数组对象 何时使用:只要保存横行竖列的数据, 具有上下级包含关系的数据, 创建二维数组: 1. var arr=[]; col arr[0]=[" ...

  9. Unity加载模块深度解析(网格篇)

    在上一篇 加载模块深度解析(一)中,我们重点讨论了纹理资源的加载性能.这次,我们再来为你揭开其他主流资源的加载效率. 这是侑虎科技第53篇原创文章,欢迎转发分享,未经作者授权请勿转载.同时如果您有任何 ...

  10. 后台返回字符串类型function的处理 (递归算法)

    $(function(){ $.ajax({ type: "post", url: "${ctx}/modules/fos/reference/echart", ...