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


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

     

     

    系列文章链接:

     

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

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

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

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

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

    IIS负载均衡-Application Request Route详解第五篇

     

     

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

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

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

     

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

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

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

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

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

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

                  

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

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

     

     

    20120405231440.png

     

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

     

    20120405231503.png

     

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

     

    20120405231532.png

     

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

     

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

     、20120405231648.png

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

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

     

    20120405231904.png

     

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

     

     

    20120405231942.png

     

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

     

    20120405232025.png

     

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

     

    20120405232119.png

     

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

     

    20120405232148.png

     

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

     

    20120405232224.png

     

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

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

    小洋,燕洋天
  • 相关阅读:
    02.02.03第3章 餐饮项目案例(Power BI商业智能分析)
    02.02.02 第2章 制作power bi图表(Power BI商业智能分析)
    MySQL 目录结构信息
    Commons-FileUpload 文件上传(模板)
    Commons-FileUpload 常用API
    Java DOM方式解析XML(模板)
    常用的节点类型
    MySQL权限及登陆、退出方法
    Java 锁
    线程的状态
  • 原文地址:https://www.cnblogs.com/yanyangtian/p/2434060.html
Copyright © 2020-2023  润新知