多台服务器负载均衡的压力测试要怎么做
根据硬件本次的大小,举个例子,比如你现在有台电脑安装的是win ser 2003 的服务器,上面有iis sql ser 2005 一台是2008 的服务器,上面是ad dns。。。这样的话,相比就要给ser 2003 上的内存多点,根据自己的需求,合理的分配
1:找分区或目录同步软件,某台服务器改动了自动把修改应用到别的服务器,比如红旗的HA。
2:换种建服务器的思路,后台用一台独立的服务器做数据库和文件服务器,用来存放数据库和上传的文件,另外的做负载均衡运行服务器,把不需要变动的网页程序放上面。
你可以试试在一台服务器做WEB和数据库,另外一台做WEB,两个WEB都连接那一个数据库,这样两个WEB内容就是同步的了,然后两台WEB间做负载,下边是我COPY的
网络负载均衡可以让客户端用一个逻辑Internet名称和虚拟IP地址(又称群集IP地址)访问群集,同时保留每台计算机各自的名称。下面,我们将在两台安装Windows Server 2003的普通计算机上,介绍网络负载均衡的实现及应用。
这两台计算机中,一台计算机名称为A,IP地址为192.168.0.7;另一台名为B,IP地址为192.168.0.8。规划网络负载均衡专用虚拟IP地址为192.168.0.9。当正式应用时,客户机只需要使用IP地址192.168.0.9来访问服务器,网络服务均衡会根据每台服务器的负载情况自动选择192.168.0.7或者192.168.0.8对外提供服务。具体实现过程如下:
在实现网络负载均衡的每一台计算机上,只能安装TCP/IP协议,不要安装任何其他的协议(如IPX协议或者NetBEUI协议),这可以从“网络连接属性”中查看。
第一步,分别以管理员身份登录A机和B机,打开两台机的“本地连接”属性界面,勾选“此连接使用下列项目”中的“负载均衡”项并进入“属性”对话框,将IP地址都设为192.168.0.9(即负载均衡专用IP),将子网掩码设置为255.255.255.0;
第二步,分别进入A机和B机的“Internet协议(TCP/IP)”属性设置界面,点击“高级”按钮后,在弹出的“高级TCP/IP设置”界面中添加IP地址192.168.0.9和子网掩码设置为255.255.255.0。
第三步,退出两台计算机的“本地连接属性”窗口,耐心等一会儿让系统完成设置。
以后,如果这两台服务器不能满足需求,可以按以上步骤添加第三台、第四台计算机到网络负载均衡系统中以满足要求。
用IIS服务验证网络负载均衡
网络负载均衡配置好后,为了实现某项具体的服务,需要在网络负载均衡的计算机上安装相应的服务。例如,为了实现IIS网站的负载均衡,需要在相应的网络负载均衡服务器上安装IIS服务。为了让每个用户在通过网络负载均衡访问到不同的计算机时,能够访问到一致的数据,需要在网络负载均衡的每台计算机上保持数据的一致性。举例来说,实现了两个节点的IIS的网络负载均衡,为了保证两个网站内容的一致性,除了这两个IIS服务器的配置相同外,相应的网站数据必须一致。
为了检验网络负载均衡,我们可以通过IIS来进行验证,其他的一些应用如终端服务、Windows Media服务与IIS的应用与之相类似。在其他计算机上的IE浏览器中键入192.168.0.9,根据网络的负载,网络负载均衡会自动转发到A机或B 机。为了验证效果,你可以在浏览的时候,拔掉第一台计算机的网线或拔掉第二台机器的网线,将会发现浏览到的将是不同内容。当然,我们在测试的时候,为了验证网络负载均衡的效果,把两个网站设置成不一致的内容,而在正式应用的时候,网络负载均衡群集的每个节点计算机的内容将是一致的,这样不管使用哪一个节点响应,都能保证访问的内容是一致的。
如果负载没问题,那理论上压力测试只要测单个服务就行了。
配置Load Balance 算法
我们首先要做的就是进入 “Load Balance”,在这里你可以选择负载均衡的算法 :轮转调度,随机分配,URL参数,请求头等。如果不了解这些算法干什么 的,那就去复习上一篇吧。APR为我们提供了以下7种算法:
Weighted round robin 根据权重按照请求数据进行分配
Weighted total traffic 根据权重按照请求和响应字节大小进行分配
Least current request 优先转发给那个当前处理最少请求的服务器
Least response time 优先转发给那个当前响应最快的服务器
Server variable hash 根据服务器变量的hash来分配请求,这里面的服务器变量包括Cookie, URL,头信息等 ,详情点这里。
Query string hash 根据URL查询字符串的hash来分配请求,如果查询字符串包含多个参数(?name=jesse&location=sh),则是用整个查询字符串的hash来作判断。
Request hash 根据服务器变量或者是URL的hash来分配请求,比如说服务器变量是QUERY_STRING,那么hash的值就是query string中对应的那个值。
大家可以已经猜到,后面3种算法是可以利用来实现这种分布式环境下session的访问的,但是由于要涉及到其它的配置,所以我们后面再讲,让我们先专注于把这个负载均衡配置完,所以我们就里就先选择比较简单的Least response time,谁当前返回响应最快我们就把请求给它,验证了那句话,“能者多劳啊”。
配置转发规则
APR的机制是做为一个代理服务器,它负责接收请求,但是不做任何处理,而是直接将请求分发给具体的WEB服务器。同时我们还可以配置一些规则,有一些请求转发,有一些请求不转发,这就要感谢我们的url rewrite组件了。我们可以进入“Routing Rules”来进行相关的配置。
网站部署与同步
安装程序和运行环境同步
在实际的环境中,如果我们使用NLB在第一次部署的时候,就需要一个服务器一个服务器的部署,而且如果要对IIS进行其它的一些配置就会显得很烦琐。在APR中给我们提供的Provision功能,就可以帮助实现这样的同步功能。
在Server Farm的功能视图中,我们可以找到以下两种类型的Provision:
Application Provisioning: 主要是用来同步网站相关包括内容,配置等等,Web Deploy就是用在这里了。
Platform Provisioning:主要是用来同步安装程序的,其实这里面的Platform是指我们上面安装的 Web Platform Installer,也就是说我们在主服务器上通过Web Platform安装的程序或者组件,如果启用了Platform Provisioning的话,其它所有的服务器也会自动安装上。
我们可以来做一个Platform Provisioning的例子,点击我们的Server Farm -> 在右边的功能视图中双击Platform Provisioning -> 勾选下面两个选项。
然后我们点击左右的Servers,选中我们的主服务器(Primary),在右边的操作列表中选择 “Install Product”,在弹出的窗体中安装的程序就会被自动安装到当前Server Farm中的所有其它服务器中。
网站内容同步
和上面的思路一样,我们不需要每一个程序都部署一遍,我们只需要在主服务器上部署一遍就可以了,所有的内容以及IIS的设置都会被自动同步到其它服务器上,这就是Application Provisioning来帮我们实现的。我们可以通过点击我们的Server Farm ->在右边的功能视图中双击 “Applicaiton Provisioning” 然后勾选下面的两项即可。
接下来,我们只需要在我们的主服务器上建立我们的站点然后部署我们的网站即可,包括对网站进行一些应用程序池的配置也是只需要在主服务器上完成的,我们就不需要到每一台服务器上都去布置一遍了。
配置入口服务器
既然入口服务器不做任何处理只是转发请求的话,那我们还需要把我们的网站的内容放在入口服务器的IIS下么?这个就取决于不同的场景了,你可以建一个空的站点什么也没有,你也可以用它来做一个简单的文件服务器,在上一步中将静态文件不转发即可,让我们Web Farm中的服务器只处理动态的请求,也可以减轻他们的压力。当然如果你有单独的文件服务器那就更好了。作为测试用途我们在入口服务器上就不建任何网站了,直接使用安装IIS自带的那个默认网站即可。
有人可能会有疑问,因为我在配置Server Farm的时候同样也有这样的一个疑问。“所有的请求都是由入口服务器接收,然后再分发给Farm中具体的服务器的,那入口服务器的那个网站该如何配置呢? 是用80还是8080端口,如果我建了好几个网站,那到底哪一个网站的请求会被Farm拿到再进行转发呢?”
我在入口服务器中没有做任何网站的配置,也就是说本地有一个http://localhost的网站是可以访问的,对于外部来说它的地址就是 http://192.168.1.129/,那么为什么当外部访问 192.168.1.129的时候,它就会被Farm 中的服务器处理呢? 这就要多亏我们的Url Rewrite模块了,我们可以点击我们的Farm Mono,进入到功能视图->然后点击 Routing Rules -> 在Routing Rules 右侧的操作列表中点击 URL Rewrite... 对Routing Rules进行更详细的管理。
在我们的URL Rewrite窗口,我们就会看到已经为我们默认创建了一条入站的规则。
我们可以双击那条规则查看详细,或者进行编辑,我们可以看到这条规则实际上是用通配符匹配了所有的入站请求,然后转发给我们的Server Farm: Mono。原来是URL Rewrite在这里起了作用,当然我们也可能把 *改成 其它的通配符,以及使用正则表达式来匹配都是可以的,这些都是URL Rewite里面的功能,是可以直接搬过来用的。
URL Rewrite帮助我们匹配入站请求,然后转发给Farm,在Farm层面 APR根据 我们配置的负载均衡算法将请求转发给具体的服务器去处理请求。现在我们再回过头来看看我们最开始安装的5个组件都分别起到了什么作用。
Web Deploy : 参与Application Provisioning(网站内容及配置同步)
Web Platform Installer: 参与Platform Provisioning( 应用环境同步)
Web Farm: 主要组织者及容器
Application Request Router: 负载均衡处理
URL Rewrite: 入站请求匹配等
验证负载均衡
到这里为止,我们用 APR + Web Farm搭建的负载均衡就完成了,最终结果是我们在外面访问 http://192.168.1.129的时候,实际上是由我们Farm中的3台Web 服务器处理的,口说无凭,我们来验证一下。验证的方法很简单,我们在每个服务器下放不同的文件用来标识当前是哪个服务器在处理响应(记得在部署文件的时候要先把Application provisioning关闭掉,不然主服务器上的文件会被同步到其它的服务器上去的)。
服务器如何实现集群和负载均衡
你可以直接买一台负载均衡交换机啊,何必要浪费1台服务器呢。2 应该是每台都会有一个IP地址 外网 访问连接到的那个IP地址 是你的负载均衡交换机的IP地址 他随机把你的访问请求分配到你的3台服务器上 3 无主从关系,负载均衡交换机它会没2秒左右向你的服务器发送一个健康检查,如果发现你的服务器...
什么是负载均衡?
负载均衡:将负载进行平衡、分摊到多个操作单元上进行运行
服务器集群负载均衡区别以及选型
因此,它能够为大量的基于TCP\/IP的网络应用提供服务器负载均衡服务。根据服务类型不同分别定义服务器群组,可以根据不同服务端口将流量导向到相应的服务器。BIG-IP连续地对目标服务器进行L4到 L7合理性检查,当用户通过VIP请求目标服务器服务时,BIG-IP根椐目标服务器之间性能和网络健康情况,选择性能最佳的服务器响应用户...
负载均衡和热备服务器两个功能有什么区别
务器的负载能力为150 台,那么这个负载情况就是刚刚好,不会卡。热备功能的效果:每台服务器的负载能力变成2\/2=1 台,单台服务器带机量 为300\/1=300 台,假设单台服务器的负载能力为150 台,那么当你开启热备后就 是严重超载,极有可能出现卡机现象。例②:3 台服务器,300 台客户机 均衡...
负载均衡是什么
负载均衡(Load Balance)其意思就是分摊到多个操作单元上进行执行,例如Web服务器、FTP服务器、企业关键应用服务器和其它关键任务服务器等,从而共同完成工作任务。负载均衡建立在现有网络结构之上,它提供了一种廉价有效透明的方法扩展网络设备和服务器的带宽、增加吞吐量、加强网络数据处理能力、提高网络的...
哪些技术可以用于云计算中的负载均衡
云空间由多台什么提供负载均衡1、云空间也可以叫云服务器或者云主机,是云计算在基础设施应用上的重要组成部分;它由多台服务器提供负载均衡,资源网站实际按需要进行动态分配。2、云空间(Cloudhosting),计算机科学术语,由多台服务器提供负载均衡,资源网站实际按需要进行动态分配,适合网站比较多或者是网站...
服务器负载均衡问题,需要的设备和软件
你上面说到的这些服务器只有Web服务器需要做负载均衡,而且一般都是前置机才做负载均衡,做服务器负载均衡的条件是:1. 你要有提供相同应用的多台Web服务器。2. 要有负载均衡的设备(可以是软件也可以是硬件)。3. 要为这个服务分配一个虚拟地址(作为服务访问的统一入口)和若干真实地址(有几台Web...
多台服务器负载均衡,怎么选择?
说明:最少连接调度算法是把新的连接请求分配到当前连接数最小的服务器,最小连接调度是一种动态调度短算法,它通过服务器当前所活跃的连接数来估计服务器的负载均衡,调度器需要记录各个服务器已建立连接的数目,当一个请求被调度到某台服务器,其连接数加1,当连接中止或超时,其连接数减一,在系统...
nginx实现负载均衡至少需要几台服务器
1、nginx做反向代理几台服务器都可以用,一台也可以,具体要看你预计的业务量有多少。一台的话,就是将访问本机80\/443端口的请求转发给本机8080端口,多台同理。2、理论上很少直接用tomcat对外提供服务的,因为可扩展性太差。比如你单台tomcat负载太大了,就没法直接扩展。而使用nginx的话,后端的...
使用Nginx实现负载均衡
2、轮询法:将请求按顺序轮流地分配到后端服务器上,它均衡地对待后端的每一台服务器,而不关心服务器实际的连接数和当前的系统负载。3、随机法:通过系统的随机算法,根据后端服务器的列表大小值来随机选取其中的一台服务器进行访问。4、加权轮询法:不同的后端服务器可能机器的配置和当前系统的负载并...
姓伦升血: 采用压力测试软件即可测试,你可以去服务器厂商(正睿)的网上找找相关技术文档参考一下,很快就清楚了!
泸西县18463041737: 多台服务器如何做网络负载均衡? - ?
姓伦升血: 1:找分区或目录同步软件,某台服务器改动了自动把修改应用到别的服务器,比如红旗的HA.2:换种建服务器的思路,后台用一台独立的服务器做数据库和文件服务器,用来存放数据库和上传的文件,另外的做负载均衡运行服务器,把不需...
泸西县18463041737: 如何验证负载均衡 - ?
姓伦升血: 如果您将硬件负载平衡器作为 Communicator Web Access(2007 R2 发行版)基础结构的一部分进行部署,则应该运行一系列的测试来验证负载平衡器是否正确配置并按预期的方式工作.建议您至少进行以下验证: 确认每台 Communicator Web ...
泸西县18463041737: 网络负载均衡的验证方法 - ?
姓伦升血: 网络负载均衡配置好后,为了实现某项具体的服务,需要在网络负载均衡的计算机上安装相应的服务.例如,为了实现IIS网站的负载均衡,需要在相应的网络负载均衡服务器上安装IIS服务.为了让每个用户在通过网络负载均衡访问到不同的计算...
泸西县18463041737: 怎样测试服务器压力? - ?
姓伦升血: 下载并安装WAST; 1.设置并行连接数;2.设置持续时间; 3.其余设置;注:所有以上的选项可以根据自己的需要进行设置.设置完成后就可以进行压力测试.测试的步骤如下:第一步,点击工具栏上的“New Script”按钮,在打开的面板中...
泸西县18463041737: nginx 负载均衡 服务器有多个站点,改怎么设置选择我需要的 - ?
姓伦升血: 负载均衡是我们大流量网站要做的一个东西,下面我来给大家介绍在Nginx服务器上进行负载均衡配置方法,希望对有需要的同学有所帮助哦. 负载均衡 先来简单了解一下什么是负载均衡,单从字面上的意思来理解就可以解释N台服务器平均分...
泸西县18463041737: 怎么做压力测试,来测试代码性能 - ?
姓伦升血: ApacheBench是Apache bin目录下附带的一个小工具,专门用来做HTTP服务器的Benchmark Testing,这玩意儿可以单独运行,可以到这儿直接下载了用 Apache Bench,下载后,将ab文件copy到 /usr/local/bin 目录即可.工具/原料 ...
泸西县18463041737: loadrunner如何向多台测试机如何向服务器加压. - ?
姓伦升血: 首先需要一台PC安装controller,并把压测脚本部署在controller的PC上面.另用其他物理机作为压力机,压力机需要安装好loadrunner agent,并且保证controller的pc可以访问到压力机,最后需要保证压力机的网络环境可以访问压测环境.
泸西县18463041737: win7,64位,如何用LoadRunner 11在多台机器跑压力测试,怎么做? - ?
姓伦升血: 联机测试,只需要把脚本放到controller里面,压力机需要安装loadrunner agent,然后在controller里面配置脚本、场景和压力机就行
泸西县18463041737: DNSPOD如何使用DNSPod实现负载均衡?
姓伦升血: 平均分配每台服务器上的压力、将压力分散的方法就叫做负载均衡. [利用DNSPod来实现服务器流量的负载均衡,原理是“给网站访问者随机分配不同ip”] 如果你有多台服务器,需要将流量分摊到各个服务器,那就可以利用DNSPod来做负载均衡. 下图的例子是:有3台联通服务器、3台电信服务器,要实现“联通用户流量分摊到3台联通服务器、其他用户流量分摊到电信服务器”这个效果的设置 4、负载均衡的常见问题 添加记录的时候,选择线路类型为默认即可. IP是随机给出的.由于访问者访问的资源不同,流量是不可能做到完全平均的.