在大型Web应用系统中,由于请求的数据量过大以及并发的因素,导致Web系统会出现宕机的现象,解决这一类问题的方法我个人觉得主要在以下几个方面:

1.IIS 负载均衡。

2.数据库 负载均衡。

3.系统架构优化,比如报表服务器和应用服务器分开等。

本文主要介绍以下IIS负载均衡的实现方法,作者也是慢慢摸索的,如有不当之处还请各位大神指点以下,以求共同进步!!

演示环境介绍:

Server 1: 18.13 (用来分流的IIS服务器)。

Server 1: 18.49 (用来分流的IIS服务器)。

Server 1: 50.32 (用户所访问的服务器)。

用来演示的网站:一个名为WebTest的网站,内容就是一张图片,足以达到演示效果。

安装Server Farms ,如下图所示:

整个安装步骤非常简单,跟着提示走即可,安装完成之后在IIS里面可以看到Server Farms的项目了,如下图所示:

现在我们通过Server Farms 来创建Server,如下图所示:

有多少个IIS服务器就创建多少个,我这里创建了2个,创建完成之后可以在“运行状态测试”中进行测试,如下:

Server Farms判断目标IIS服务器是否正常,是通过目标服务器里面的某一个文件返回的数据来判断的,具体配置如下所示,health.txt是用来作为验证 的一个文件,里面的内容是OK,那么如果这个文件返回的数据是OK,Server Farms则会判断该服务器为正常状态,反之则不正常:

对于如何去平衡服务器的压力,Server Farms已经提供了一些算法,具体如截图所示,这里不做详细的介绍,大家有兴趣的话可以逐个测试一下,

两台IIS服务器验证成功,说明我们的配置是正确的,下一步我们来测试一下:我直接访问50.32服务器,这个时候呈现出来的页面是18.49这个服务器上面的图片。

OK,现在我将18.49这台服务器的IIS停止掉,如下图所示:

当18.49这台服务器的IIS停止以后,我们再次查看Server Farms里面的服务器状态,如下图所示:

当18.49挂了之后,我们再次访问50.32服务器,结果出来了:

结论:当配置了多台IIS服务器之后,根据我们定义的均衡规则和算法,它会自动为我们协调和分配当前的请求来达到分流的目的,上面的演示中,当18.49无法访问的时候,自动贝切换到了18.13服务器。

PS:虽然是不同的服务器,呈现出来不同的内容,这里我是为了便于查看效果,所以采用的不同的图片来显示,不然不容易区分。

最新文章

  1. 在centos7上安装ClamAV杀毒,并杀毒(centos随机英文10字母)成功
  2. $.when().then()
  3. JS函数调用的方法
  4. Ubuntu 14.10 下查看系统硬件信息(实例详解)
  5. django转义safe
  6. win7 安装Oracle 10G,11G
  7. 从linux启动到rootfs的挂载分析
  8. Android Studio怎么删除项目
  9. .bat批处理脚本让cmd命令行提示符cd到工作目录 (转)
  10. uva 10763 Foreign Exchange(排序比较)
  11. 徒手用Java来写个Web服务器和框架吧<第二章:Request和Response>
  12. c++ 如何把RGB图像转换成HSV图像?
  13. github感悟
  14. python入门(十三):面向对象(继承、重写、公有、私有)
  15. 【CF802C】Heidi and Library(网络流)
  16. 字定义JSON序列化支持datetime格式序列化
  17. 深入理解JVM(5)——HotSpot垃圾收集器详解
  18. Kotlin入门(18)利用单例对象获取时间
  19. 借鉴 学习 DELPHI 通用函数 哈哈
  20. MT【68】一边柯西一边舍弃

热门文章

  1. 把腾讯视频嵌入到html中
  2. vue 日历组件只显示本月和下个月 -- 多选日期
  3. linux下NFS实战
  4. SWUST OJ(957)
  5. select option 选中 取消js
  6. ELK+MySQL出现大量重复记录问题处理
  7. Handlebars的基本用法
  8. Shell 与正则表达式part1
  9. <转载> 从算法上解读自动驾驶是如何实现的?
  10. es _cat API