IIS负载均衡-Application Request Route详解第五篇:使用ARR来配置试点项目

来源:转载

看到本篇的题目,大家可能感到有点奇怪!下面,我们就来看看这到底是什么意思。

大家可能遇到过这样的一种情况:希望根据某些请求用户的特性,将用户的请求导向不同的站点(请大家这里区分“亲缘性”的概念,这里不是“亲缘性”)。如果说,大家还不是很明确,那么我们就举个例子:如果发出请求的用户用的是 IE 浏览器,那么我们就将他们的请求发送到 A 服务器上的站点,如果用户用的是 Firefox 浏览器,那么我们就将请求转发到 B 服务器。

总结一句话:根据用户的特性来,按照我们的意愿来处理不同特性的请求。

我们完全可以把 ARR 的这个特性使用的更加灵活,例如,如果用户请求的是文件,那么,我们就像将其转发给文件服务器;再如,如果此时我们的站点是 Beta 版本的,我们所有的请求用服务器 A 来处理,等到以后站点稳定之后,我们就用服务器 B 上的站点来处理请求,等等。

正如之前一样,我们首先来准备一些环境,便于测试!

首先,希望使用 IIS 7 (及以上版本),并且安装 ARR ,大家可以参看之前的系列文章。

其次,准备好一台服务器(虚拟机也可以)。

再次,我们在服务器上部署两个站点: pilotSite 和 productionSite 。

我们本次的 目的 就是 : 如果发送请求的客户端安装了 .NETFramework 3.5 并且还是用的是 IE 浏览器,那么,我们就将请求发送给 pilotSite ,否则就发送给 productionSite ,并且两个不同的站点分别位于不同的两个 Server Farm 中(当然,我们可以在每个 Farm 中加入更多的站点)。

下面,我们就开始具体的操作。

1. 在 IIS 中部署两个站点(我们分别将其部署在不同的端口,如果愿意,大家完全可以将其分别放在两台不同的服务器上)如下图:

2. 创建两个 Server Farm ,分别名为: pilotSiteServers ,和 productionSiteServers ,如下:

3. 选中 pilotSiteServers ,然后双击“ Routing Rules ”,得到如下图:

因为这里需要涉及到了使用多个 Server Farm 来匹配不同的请求,所以,需要配置与 URL Rewrite 。

4. 点击了“ URL Rewrite… ”之后,看到如下的界面:

我们可以看到,现在已经有了两条 URL Rewrite 规则,因为此时,我们需要根据特定的用户信息来转发请求,所以,我们要修改默认的规则:

a. 我们要确保“ ARR_pilotSiteServers_loadbalance ”在上面,而“ ARR_productionSiteServers_loadbalance ”在下面,如果不是,可以点击“ Move Up ”和“ Move Down ”来调整,如下:

b. 选择“ ARR_pilotSiteServers_loadbalance ”,然后点击“ Edit ”开始编辑。此时看到的界面如下:

c. 按照我们之前的需求:客户端安装了 .NET 3.5 并且使用 IE 浏览器的请求都被转发给 pilotSiteServers 来处理,所以,我们开始添加我们的一些过滤的规则,点击“ Add Conditions ”,然后点击“ Add… ”,如下图:

d. 添加“ {HTTP_USER_AGENT} ”,然后在 Pattern 添加“ *MSIE* ”,如图:

e. 然后,我们在添加另外一个规则( .NET 3.5 的那个),操作和上面的类似,如图:

f. 添加完了两个过滤规则之后,然后不勾选 “ Stop processing ofsubsequent rules ”,然后点击“ Apply ”,如图:

到这里就可以运行站点了。

建议大家将两个站点部署在不同的服务器上面,因为我在测试的过程中发现:将两个放在一台服务器上面,总是报错,分开就好了!

相关内容

构建高性能.NET应用之配置高可用IIS服务器-第一篇:IIS必须掌握的知识

构建高性能.NET应用之配置高可用IIS服务器-第二篇 IIS请求处理模型

构建高性能.NET应用之配置高可用IIS服务器-第三篇 IIS中三个核心组件的讲解(上)

构建高性能.NET应用之配置高可用IIS服务器-第四篇 IIS常见问题之:工作进程回收机制(上)

构建高性能.NET应用之配高可用IIS服务器-第五篇 IIS常见问题之:工作进程回收机制(中)

IIS负载均衡-Application Request Route详解第一篇: ARR介绍

IIS负载均衡-Application Request Route详解第二篇:创建与配置Server Farm

IIS负载均衡-Application Request Route详解第三篇:使用ARR进行Http请求的负载均衡

IIS负载均衡-Application Request Route详解第四篇:使用ARR实现三层部署架构

作者介绍:汪洋,哪合伙 CEO ,曾大汉电子商务有限公司首席技术官,副总裁,负责公司产品、技术、运营,参与商业模式设计。 华康移动医疗前 CTO ,副总裁,首席架构师。微软 MVP

.NET社区新闻,深度好文,微信中搜索 dotNET跨平台 或扫描二维码关注

分享给朋友:
您可能感兴趣的文章:
随机阅读: