[Asp.net 开发系列之SignalR篇]专题五:SignalR支持的平台
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支持的平台的更多相关文章
- 【Windows10 IoT开发系列】配置篇
原文:[Windows10 IoT开发系列]配置篇 Windows10 For IoT是Windows 10家族的一个新星,其针对不同平台拥有不同的版本.而其最重要的一个版本是运行在Raspberry ...
- openlayers5-webpack 入门开发系列一初探篇(附源码下载)
前言 openlayers5-webpack 入门开发系列环境知识点了解: node 安装包下载webpack 打包管理工具需要依赖 node 环境,所以 node 安装包必须安装,上面链接是官网下载 ...
- leaflet-webpack 入门开发系列一初探篇(附源码下载)
前言 leaflet-webpack 入门开发系列环境知识点了解: node 安装包下载webpack 打包管理工具需要依赖 node 环境,所以 node 安装包必须安装,上面链接是官网下载地址 w ...
- [Asp.net 开发系列之SignalR篇]专题一:Asp.net SignalR快速入门
一.前言 之前半年时间感觉自己有点浮躁,导致停顿了半年多的时间没有更新博客,今天重新开始记录博文,希望自己可以找回初心,继续沉淀.由于最近做的项目中用到SignalR技术,所以打算总结下Asp.net ...
- [置顶]【实用 .NET Core开发系列】- 导航篇
前言 此系列从出发点来看,是 上个系列的续篇, 上个系列因为后面工作的原因,后面几篇没有写完,后来.NET Core出来之后,注意力就转移到了.NET Core上,所以再也就没有继续下去,此是原因之一 ...
- openlayers4 入门开发系列之风场图篇
前言 openlayers4 官网的 api 文档介绍地址 openlayers4 api,里面详细的介绍 openlayers4 各个类的介绍,还有就是在线例子:openlayers4 官网在线例子 ...
- openlayers4 入门开发系列之热力图篇(附源码下载)
前言 openlayers4 官网的 api 文档介绍地址 openlayers4 api,里面详细的介绍 openlayers4 各个类的介绍,还有就是在线例子:openlayers4 官网在线例子 ...
- Android Metro风格的Launcher开发系列第三篇
前言: 各位小伙伴,又到了每周更新文章了时候了,本来是周日能发出来呢,这不是赶上清明节吗,女王大人发话了,清明节前两天半陪她玩,只留给我周一下午半天时间写博客,哪里有女王哪里就有压迫呀有木有!好了闲话 ...
- cesium-webpack 入门开发系列一初探篇(附源码下载)
前言 cesium-webpack 入门开发系列环境知识点了解: node 安装包下载webpack 打包管理工具需要依赖 node 环境,所以 node 安装包必须安装,上面链接是官网下载地址 we ...
随机推荐
- B-Tree 学习
算法导论 第18章 B树与其他树的结构不同的是 B数是多叉而不是二叉树 而且分叉因子很大一般使用于数据库 针对需要硬盘IO的情况而使用 可以降低磁盘IOB树的一个节点是以磁盘的页面为单位,而不是数据 ...
- 不容错过!2016年度优秀UI/UX设计文章
本文整理了一些2016年度最受欢迎的文章,例如有关UI / UX设计的理论知识,书籍和工具,如何做出更好的设计的方法和建议,以及新的设计趋势. 1. 2017年用户体验设计趋势 我们期待着2017年用 ...
- c#在主窗体panel 容器内嵌入另一个窗体(子窗体)的实现
主窗体: 子窗体: 把子窗体嵌入到主窗体的panel 右侧中: 代码: { public MainForm() { InitializeComponent(); } private void Clo ...
- GIL与线程互斥锁
GIL 是解释器级别的锁,是限制只有一个原生线程运行,防止多个原生线程之间修改底层的共享数据.而线程互斥锁是防止多个线程同时修改python内存空间的共享数据.
- js高级应用
特别板块:js跨域请求Tomcat6.tomcat7 跨域设置(包含html5 的CORS) 需要下载两个jar文件,cors-filter-1.7.jar,Java-property-utils-1 ...
- jquery 判断checkbox是否选中几个版本的区别
$('#checkbox1').prop('checked') - in jQuery 1.6+, usually the way to go $('#checkbox1').is(':checked ...
- WinForm应用只运行一次
一.WinForm应用只能运行一次 static class Program { /// <summary> /// 应用程序的主入口点. /// </summary> [ST ...
- 深入研究C语言 第四篇
这里更多探究的是指针的机制. 用debug对下面程序进行分析,记录每一条C语句运行后,相关内存单元的值. 程序a.c 注意理解指针机制 我们编写如下代码: 编译加载进debug查看: 我们先看其反汇编 ...
- python脚本执行Scapy出现IPv6警告WARNING解决办法
安装完scapy,写了脚本执行后执行: WARNING: No route found for IPv6 destination :: (no default route?) 原因是用 from sc ...
- Mysql 分段统计
今天遇到个小问题觉得挺有意思,与大家分享. 需求是这样的,对数据库中的一张表做按时间的分段统计,结果只要每个区间的数量. select YEAR(create_time) as nian,MONTH( ...