• 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实现三层部署架构

                   本篇的主要目的是带领大家一起来使用ARR来实现一个三层部署架构。这里的三层部署架构主要是由:服务层,应用程序服务器层已经数据层实现。如下图所示:

     

    20120330224630.png

     

               每次一提到“层”这个字的时候,似乎感觉这个字特别的惹火。很多朋友开始讨论起来,于是很多的见解和理解就出来了:有人说:架构就是分层;三层就是指:显示层,业务层,数据访问层…

                   不管上述的理解和争论对错与否,这里不会对这些理论和概念进行过多的阐释,这里有一点提到的就是:不要将物理层Tier和逻辑层Layer混在一起讲,或者说,不要将应用程序的逻辑层与物理的部署层混为一谈!

                   注:在自己的学习和工作的经历中有这样的感觉:很多时候,所学的东西会搅在一起,并且甚至感觉他们相互矛盾,还会颠覆自己之前很多的理解和看法,有时候确实感觉非常痛苦,但是也是像是凤凰的重生。其实这不是什么坏事,知识和经验就是在这过程中,不断的思考,总结,提炼出来的!其实到后来大家就可以发现:我们没有必要死扣一些概念,什么层啊,模式,都不是关键,锻炼出一种思维才是最有价值的。

                  

    我们这里讲的是物理层的部署。

    正如之前一样,我们来做一些准备工作:

    1. 准备三台服务器(可以用虚拟机),其中一台用来处理对静态内容的请求,例如图片,脚本,html页面等,我们把这一台服务器放在第一层。
    2. 再用一台服务器放在第二层,作用应用程序服务器,用来处理动态内容的请求。
    3. 另外一台服务器用来部署数据库。

    另外,我也把三台服务器的相关配置说明一下:

    1. 三台服务器安装了Win Server 2008和IIS
    2. 在那台处理静态文件的服务器上,我们安装ARR,也就说,此时这一台服务器做两件事情:负责转发请求;处理对静态文件的请求。

    第一步:准备工作

                   一般而言,我们判断是否是对静态文件进行请求,主要是通过检查请求的中是否包含文件的扩展名,例如.js,.png等。当然,在一些情况下,我们还以动态的方式来对静态文件的请求进行处理,例如,我们站点中写了一个类似FileHandler的HttpHandler,然后通过类似的www.agilesharp.com/file?fileid=xxxxx的方式来 处理所有对文件的请求。这两种方式各有优缺点和各自的用途,我们这里不做讨论。

                   很多时候,我们在静态文件放在站点的文件夹中,例如/images/,/css/,/js/等。下面,我们开始演示,我们为了确认对静态文件的请求是由安装了ARR所在的服务器处理的,我们分别在三服务器的站点中放置三张名字一样但是内容不同的图片,如下:

     

    20120330224708.png

     

                   其他服务器上面的站点结果和这个类似,只是把图片的内容改为了“安捷雨希“而已。

    第二步:在ARR中配置对静态文件的请求

                   我们进行这一步操作的主要目的就是:使得ARR所在的服务器来处理所有对站点静态文件的请求(为了起到演示作用,这里对静态文件的请求,我们不会包括html的文件)。

                   下面,我们就开始操作:

    1. 启动IIS
    2. 创建一个Server Farm,并且添加两台服务器,如图所示:

     

    20120330224815.png

     

     

            这个205服务器就是我们安装了ARR的服务器,因为此时我的demo站点部署在8080端口,所以这里要开启“Advance setting“。

            再添加第二台服务器,其上的站点是部署在80端口。

     

            添加的结果就如下:

     

    20120330224844.png

      

     

    大家到这里就可能有点纳闷了:怎么只是添加了两台服务器呢,不是准备了三台服务器吗?

           理由很简单,有一台服务器是作为数据库服务器,而不是作为http请求处理的服务器(换句话说,http请求不会发送到数据库服务器上去),并且数据库服务器是我们在应用程序中通过连接字符串来连接的。

           

                   在我还没有配置Server Farm之前,我分别在两台服务器上浏览了站点:http://localhost:8080/images/logo.png,此时看到的结果如下:

     

    20120330224950.png

     

                   从图中可以看到,我请求logo.png的时候,是应用程序的服务器(没有安装ARR的那个服务器)处理了这个请求。

                   下面我们开始配置。

    1. 选中创建的Server Farm

    2. 选中“Routing Rules“,如下:

     

    20120330225135.png

     

    3. 双击“Routing Rules“,如下:

     

    20120330225212.png

     

     

            主要注意图中标红的两个地方:第一个是配置哪些扩展名的文件不转发请求。在图中,我们配置了*.png,就说明,如果ARR客户端要请求.png文件,那么ARR就不将这个请求转发给Server Farm中的其他服务器,而是有本机直接处理。

            配置好了之后,我们就点击“Apply“,然后再次运行浏览器,来看效果。

    20120330225248.png

     

            大家看到上面的图,右边图是我在ARR所在的服务器发送请求得到的结果,而左边是我直接在应用程序服务器上面查看图片。

    还记得在之前没有配置的时候,我在ARR服务器上面发送请求的时候,看到的是“安捷雨希“,说明ARR转发了对png文件的请求;而当我们配置之后,此时ARR就不在转发这个请求,而是自己处理,所以我们看到了”agilesharp“的图片。

                   这里,依然给大家留一个作业:大家可以把对html文件的请求也不转发,看看效果!

    作者:小洋,燕洋天
    出处:http://yanyangtian.cnblogs.com/

    承接架构设计,性能优化(程序,数据库等方面)技术咨询

    高质量干货文章 

    负载均衡

    负载均衡
    摘要: 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 阅读全文
    posted @ 2012-03-31 08:51 小洋(燕洋天) 阅读(446) | 评论 (1) 编辑
     
    摘要: 负载均衡第二篇-负载均衡基础知识普及在上一篇中,我们一直在讲述与负载均衡周边的一些的知识,朋友们也不要着急,心急吃不了热豆腐。每天一点!系列文章索引:负载均衡第一篇-介绍篇 负载均衡第二篇-负载均衡基础知识普及一般而言,负载均衡在服务器和网络之前起到一个中间桥梁的作用,如下图所示:正如之前所说的,负载均衡大体包含以下几类:服务器负载均衡全球服务器负载均衡防火墙负载均衡其中,服务器负载均衡主要是讲负载请求分散到后端的每个服务器上,克服一台服务器引发的问题,从而达到可伸缩性和容错性。全球服务器负载均衡主要是将全球不同地区的用户的请求转发到各对应地区的服务器处理中心,从而为用户提供更快的响应,同时,阅读全文
    posted @ 2012-03-30 12:16 小洋(燕洋天) 阅读(1137) | 评论 (6) 编辑
     
    摘要: IIS负载均衡-Application Request Route详解第三篇:使用ARR进行Http请求的负载均衡(上) 在前两篇文章中,我们已经讲述如何配置与安装ARR,从本篇文章开始,我们将重点的来讲述如何在使用ARR进行负载均衡。 本篇文章的目的主要是一步步的带领大家如何配置和使用ARR来进行Http请求的负载均衡,从而实现高可用与高扩展性。同时,本篇文章还会着重的讲述ARR是如何监视服务器的健康状况,同时也会讲述如何设置客户端的亲缘性。系列文章链接:IIS负载均衡-Application Request Route详解第一篇: ARR介绍IIS负载均衡-Application Req.阅读全文
    posted @ 2012-03-30 09:10 小洋(燕洋天) 阅读(1002) | 评论 (7) 编辑
     
    摘要: 负载均衡原理剖析与实践第一篇-介绍篇系列文章索引:负载均衡第一篇-介绍篇 负载均衡第二篇-负载均衡基础知识普及前言:相信朋友们对负载均衡应该不陌生了!特别是对搞运维的朋友!可能很多的技术人员认为,负载均衡不是搞IT运维的人管的吗,关我们开发人员什么事情?曾经,我也是这样想的,但是后来发现我错了。开发人员,需要懂性能方面的问题,而负载均衡也是属于性能的范畴,so…!如果开发人员想继续不断的提升自己,走向设计,架构的角色,那么,你就必须对技术的有全面的把握和整体的评估,才能在项目中从软件和硬件多方面考虑,真正的实现可用性,扩展性,灵活性。 曾经经历过很多的项目,特别实在做外包的时候,基本上涉及不到阅读全文
    posted @ 2012-03-29 09:03 小洋(燕洋天) 阅读(1501) | 评论 (10) 编辑
     
    摘要: IIS负载均衡-Application Request Route详解第二篇:创建与配置Server Farm 自从本系列发布之后,收到了很多的朋友的回复!非常感谢,同时很多朋友问到了一些问题,有些问题是一些比较基本的问题,由于时间的缘故,不会一一的为大家回复,如果有不明白的,希望大家勤自学!本系列虽然不难,但是很多的一些知识都是默认需要掌握的,例如:负载均衡的概念,原理,Web Farm等。本篇议题如下:创建Server Farm配置Server Farm系列文章链接:IIS负载均衡-Application Request Route详解第一篇: ARR介绍IIS负载均衡-Applicati阅读全文
    posted @ 2012-03-27 09:41 小洋(燕洋天) 阅读(1179) | 评论 (7) 编辑
     
    摘要: IIS负载均衡-Application Request Route详解第一篇: ARR介绍说到负载均衡,相信大家已经不再陌生了,本系列主要介绍在IIS中可以采用的负载均衡的软件:微软的Application Request Route模块。其实Application Request Route已经有很多文章介绍过了,但是有很多的文档都是英文的,笔者在项目中,曾经为了使用和测试Application Request Route,将有关的文档已经转为中文,在组员之间传阅,本系列在这些文档的中,再加入一些使用的心得。本篇议题如下:Application Request Route介绍Applicat阅读全文
    posted @ 2012-03-26 11:04 小洋(燕洋天) 阅读(1734) | 评论 (14) 编辑
  • 相关阅读:
    静态类和静态类成员(C# 编程指南)
    sealed(C# 参考)
    C#高级知识点概要(2)
    线程并发和异步
    CXF+Spring+Hibernate实现RESTful webservice服务端实例
    Spring Boot 实现RESTful webservice服务端实例
    Spring Boot 实现RESTful webservice服务端示例
    Spring Boot REST API 自动化测试
    Biee插入图形时报错-超过了已配置的已允许输出提示, 区域, 行或列的最大数目
    BIEE安装一直卡在最后一步解决办法
  • 原文地址:https://www.cnblogs.com/Leo_wl/p/2426671.html
Copyright © 2020-2023  润新知