IIS中应用Application Request Route 配置负载均衡

简介

ApplicationRequest Route(后面简称为ARR)是一个寄宿于IIS7(及以后的IIS版本)的一个基于代理的模块,它可以通过判断Http Headers,Server Variables以及负载均衡算法将HTTP的请求转发到不同的处理服务器之上。ARR是基于URLRewrite Module的,它通过检测客户端发来的HTTP请求来做出请求路由的决定。

ARR安装(目前v3.0)

这是下载链接:http://www.iis.net/download/ApplicationRequestRouting

看到上面的Service Farms 就说明你安装成功了。

Demo 

我手上有三台Windows机器,本地的机器用作负载均衡,如下:

服务器IP地址是否安装了ARR
本地localhost
服务器A

212.64.27.238

服务器B

132.232.110.243

在三台机器上都新建一个网站,名为arr,网站的内容只有一个index.html,端口都为8888,如下只贴了本地的机器:

 右击Server Farms,点击Create Server Farm,这个里命名为mytestarr。界面如下:

 Server Farms 就是对一个或多个服务器进行逻辑分组,在这里加了两台服务器,端口也改成了8888,告诉ARR这是要转发的端口,如下。

 在Server Farms主界面点击Routing Rules,选中“Use URL Rewrite to inspect incoming requests”,界面如下:

 选中之后,点击CDC317011(DIR\cong.wu),再点击URL Rewrite,会发现下面会多出一条URL重写规则,这里是load balance起作用的核心,如果不想用load balance了,可以不选中上面的“Use URL Rewrite to inspect incoming requests”,如果你选中了,那下面的这个规则就起作用了,它会把对我本机的所有端口的请求都转发到server farm的服务器上的8888端口。

 在Server Farms主界面点击Load Balance,选择Weighted round robin

好了,配置完成,我们直接访问localhost:8888试试,我们连续访问两次,得到的结果如下:

 

 到这里可以看到使用ARR配置负责均衡成功了。下面是对一些具体配置信息的介绍,Server Farms主界面上面有7个图标,我们一一介绍。

缓存

自行意会吧,不介绍了。

健康检查

几乎所有的load balancer都有这一步。ARR如果判断这些服务器是否还在运行呢,这里使用一个文件,ARR会每隔30秒向这些服务器Check这个文件,如果返回的结果正确,那就表明这些服务器是正确的。

先在两台服务器上,指定的路径下创建一个text.txt文件,里面输入ok。在本地机器上Server Farms主界面点击Health Test,输入如下内容,点击Apply。

配置好后,ARR可以自行判断哪些服务器是可用的,不然的话,如果其中某台服务器挂了,ARR依然会把请求转发给这台挂了的服务器,请求就会丢失。

Load Balance

 负载均衡的算法这里有4种,网上有许多介绍了,这里不介绍了。

监控和管理

这里可以看到被请求的次数等情况

 代理(Proxy)

看这篇官网的文章https://docs.microsoft.com/en-us/iis/extensions/configuring-application-request-routing-arr/creating-a-forward-proxy-using-application-request-routing

 

Routing Rules

 选中了“Use URL Rewrite to inspect incoming requests”后,URL rewrite才会生效,ARR的负载均衡才能成功。如果添加如下配置呢,它会将所有的png图片不进行转发,拥有ARR的服务器可以直接处理静态资源。

Server Affinity

这里很重要,当选中了Client affinity之后, 再来访问localhost:8888试试

 可以看出Cookie里面多出一个ARRAffinity,启用了Client Affinity之后,当你第一次访问此网站的时候,这个ARRAffinity会记住是哪台服务器处理了你的请求,你的后续请求都会发送到此台服务器上,这对于有状态的服务器非常有用,比如在.net framework时代常用的Session。

拒绝新的请求

点击Take Server Offline后,这台服务器就不会接受新的请求了,但原有的还在执行的请求会继续执行。

参考链接

https://docs.microsoft.com/en-us/iis/extensions/configuring-application-request-routing-arr/http-load-balancing-using-application-request-routing#overview

总结

Azure Web APP里负载均衡也是使用得是它,天然支持七层Load Balancer,点击这里看看。

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: IIS(Internet Information Services)是微软开发的一款用于托管网站和Web应用程序的服务器软件。Application Request Routing(ARR)是IIS的一个模块,用于负载均衡和代理请求。要在IIS安装Application Request Routing,您可以按照以下步骤进行操作: 1. 确保您已经安装了IIS。如果尚未安装,请先安装IIS,方法是打开“控制面板”,选择“程序”或者“程序和功能”,然后点击“打开或关闭Windows功能”。找到“Internet Information Services”并选择将其安装。 2. 下载ARR软件包。您可以在微软官方网站或其他可靠的下载站点上找到合适的ARR版本。确保下载的版本与您的IIS兼容。 3. 解压ARR软件包。将下载的ARR软件包解压到您计算机上的一个临时文件夹。 4. 打开IIS管理器。点击开始菜单,然后输入“inetmgr”以打开IIS管理器。 5. 打开服务器节点。在IIS管理器,找到您的服务器节点,并双击以展开其内容。 6. 安装ARR模块。在服务器节点上,找到“模块”图标,并双击以打开模块页面。点击右侧“导入模块”以浏览并选择先前解压的ARR软件包的“ApplicationRequestRouting”文件。 7. 启用ARR模块。在ARR模块的“模块”页面上,找到“不可见”列并启用ARR模块。 8. 重启IIS。在IIS管理器,右键单击服务器节点,并选择“重新启动”。 完成上述步骤后,您的IIS就已经成功安装了Application Request Routing模块。ARR可以帮助您实现负载均衡、反向代理和URL重写等功能,提高您的Web应用程序的性能和可靠性。 ### 回答2: IIS(Internet Information Services)是用于托管和发布Web应用程序的Windows服务器软件。Application Request Routing(ARR)是一个IIS扩展模块,可以用于将传入的HTTP请求路由到后端服务器。下面是安装和配置Application Request Routing的步骤: 1. 下载ARR并安装:首先,从官方网站(https://www.iis.net/downloads/microsoft/application-request-routing)下载ARR扩展程序集。确保你下载的版本与你的IIS版本兼容。安装过程通常是双击下载的安装文件,然后按照安装向导的指示操作进行安装。 2. 配置Web服务器:打开IIS管理器,并选择你的Web服务器。双击“配置应用程序请求路由”图标。这将打开一个新的配置窗口。 3. 添加服务器代理:在ARR配置窗口,点击右侧的“添加服务器代理”链接。在弹出的对话框,输入后端服务器的IP地址或域名,并为该服务器分配一个唯一的名称。点击“确定”按钮保存设置。 4. 配置请求路由规则:在ARR配置窗口,点击左侧的“请求路由规则”链接。然后点击右侧的“添加请求路由规则”链接。在弹出的对话框,为规则指定一个名称,并配置匹配条件和相应的转发行为。点击“确定”按钮保存设置。 5. 应用配置更改:完成所有的ARR配置后,点击ARR配置窗口右上角的“应用”按钮,以应用配置更改。 通过以上步骤,你已经成功安装和配置Application Request Routing扩展。现在,传入的HTTP请求会被路由到后端服务器,以响应请求并返回相应的内容。通过ARR的配置,你可以实现负载平衡、故障转移和基于规则的请求转发等功能。 ### 回答3: IIS安装Application Request Routing (ARR) 是为了在Web服务器实现负载均衡和请求路由的功能。ARR是一个扩展模块,可以安装到IIS上,以增强其能力。 要安装Application Request Routing,首先需要确保已经安装了IIS。然后可以按照以下步骤来安装ARR: 1. 下载ARR安装包:可以从微软官网下载ARR的安装程序。选择与你的服务器版本和操作系统相匹配的版本。 2. 运行安装程序:双击下载的安装程序并按照提示进行安装。可以选择安装路径和其他选项。 3. 启用ARR扩展:安装完成后,打开IIS管理器。在左侧的连接列表,选择你的服务器。然后在间的内容面板,双击“模块”图标。 4. 添加ARR扩展:在模块列表,点击右侧的“添加模块”链接。在弹出的对话框,选择“<全局模块>”选项卡,并找到“Application Request Routing”项。选该项并点击“确定”。 5. 配置ARR规则:在IIS管理器的左侧连接列表,选择你的Web站点。然后在间的内容面板,找到“Application Request Routing - 代理”图标并双击。 6. 添加代理服务器:在代理服务器面板,选择“服务器代理设置”选项卡。点击右侧的“添加”按钮,输入代理服务器的IP地址和端口号,并点击“确定”。 7. 测试ARR:完成配置后,可以测试ARR是否正常工作。可以尝试通过不同的IP地址或域名访问你的Web站点,并观察请求是否按照预期进行路由。 通过以上步骤,你可以成功安装和配置IISApplication Request Routing,并实现负载均衡和请求路由的功能。请确保在安装前备份你的服务器,并按照官方文档或其他可靠来源提供的具体步骤进行操作。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值