WEB服务器负载均衡问题的解决

来源:itbulo 时间:2008-01-09 10:07:00 

环境说明:

开发平台是DOTNET B/S .NET Framework 1.1

正式WEB服务器和测试机,均为win2003

原有一个主网站,在六台WEB服务器做负载均衡。运行比较稳定。

现新开发一个子站,将布署在另三台WEB服务器上做负载均衡。这个负载均衡设置类似主网站的设置。

解决步骤:

1)子站在测试机测试通过,运行正常。准备布署到正式环境下(三台WEB服务器)

2)将子站程序拷贝到那三台WEB服务器上,配置好子站相关配置,开放站点与负载均衡开始测试。

3)测试时,页面显示正常,但在触发服务端事件时出现异常。

错误信息“Viewstate is invalid for this page”(此页的视图状态无效)没有为解决此问题提供足够信息

同样的程序为何在测试机运行没问题,放到正式环境下,就出现异常呢?

在微软网站要查到这个异常的解释(http://support.microsoft.com/default.aspx?scid=kb;zh-cn;831150),说建议安装Microsoft .NET Framework 1.1 Service Pack 1。

于是,怀疑没有装这个补丁,就查看注册表项:

项名称:HKEY_LOCAL_MACHINE\Software\Microsoft\NET Framework Setup\NDP\v1.1.4322

SP值为0,表明没有装Framework 1.1 Service Pack,

然后去微软网站下载了.NET Framework 1.1 Service Pack 1和.NET Framework 1.1 Service Pack 1 ASP.NET 安全更新 - Windows Server 2003

4)装上这两个补丁后,运行子站程序,在触发服务端事件时仍旧出现异常。异常如下:

异常详细信息:System.Web.HttpException: 无法验证数据。

堆栈跟踪:


           

[HttpException (0x80004005): 无法验证数据。]

[HttpException (0x80004005): Authentication of viewstate failed. 1) If this is a cluster, edit configuration so all servers use the same validationKey and validation algorithm. AutoGenerate cannot be used in a cluster. 2) Viewstate can only be posted back to the same page. 3) The viewstate for this page might be corrupted.]

再回到831150那篇文章看:“应用此修复程序后,视图状态错误信息标题将变成“Unable to Validate Data”。尽管新的错误信息格式没有对问题进行具体描述,但它比以前的错误信息格式提供了更多信息。”

得知应该是ViewState值已被截断?!

问题就转化:什么原因导致"ViewState值已被截断"呢?

因为程序在测试环境下运行没问题的,那么可能是系统级的问题。

比较一下正式和测试环境:正式环境是三台Server做负载均衡,而测试环境只一台Server。

5)将负载均衡设置修改了一下,只开放一台WEB Server。测试后,发现不出现那个异常。三台机分别测试,均无异常。

推测:可能是负载均衡设置有问题。于是找来系统管理员,他说,子站的负载均衡设置跟主站一样的啊。但还是请他再确认一下两个负载均衡设置的不同之处。

经再次的仔细检查,发现负载均衡Pool的Persistence Type(进程延续)为None,也就是说服务端不保持连接状态。这样,每次服务端事件被触发时,就会导致"ViewState值已被截断"。于是将Persistence Type(进程延续)的值改为Simple,Timeout设为600秒。

总结:

程序员不单要写好程序,也要适当的了解系统。这个问题,不一定会经常遇到,作为一个解决问题的思路,供大家分享。

附:负载均衡一般设三个地方来保证进程延续。首先启动负载均衡,然后设置“Enable Connection Rebind”为true.最后Persistence Type一般设为Simple再加上超时时间。

注:本人对负载均衡研究甚少,不知其他类似软件是否也如此设置,其原理应该都差不多。

标签:
0
投稿

猜你喜欢

  • 做好这八个方面:让你的网站达到人见人爱

    2009-02-01 08:58:00
  • ftp使用经典

    2007-08-15 14:16:00
  • 网易企业邮箱细节更新强调以用户体验为中心

    2009-10-26 10:42:00
  • 看广告点广告赚钱计划与Googel AdSense

    2007-11-11 10:10:00
  • Discuz!7.0支付宝购买积分功能详解

    2009-06-03 12:14:00
  • 视频网站的十字路口

    2008-01-16 19:00:00
  • 如何部署WordPress到Amazon云端

    2011-05-19 17:07:00
  • 搭建Linux安全的Squid代理服务器

    2010-03-29 19:07:00
  • 网站擅播奥运节目赔30万

    2009-10-14 15:28:00
  • 搜索引擎优化的中英文区别

    2008-12-31 12:58:00
  • 56网启动广告分成系统 内容方分享广告收益

    2009-12-03 16:47:00
  • Windows2003服务器安装及设置教程—软件安装与设置篇四—动易组件注册图解

    2010-01-26 20:08:00
  • 站长大会观后感:坚持,坚持,再坚持

    2008-04-20 16:52:00
  • 分析师称上网本和Office将影响微软业绩

    2009-10-24 13:55:00
  • 木马赚流量牟暴利 非法篡改IE浏览器首页

    2009-03-10 16:28:00
  • 五大浏览器网页载入速度实地测试

    2009-07-23 20:21:00
  • 德国总理默克尔对谷歌图书扫描计划表示反对

    2009-10-12 07:32:00
  • 传播木马的新途径,大家小心

    2008-01-15 08:56:00
  • 微软Office 2010 Beta版提前泄露于P2P网站

    2009-11-14 09:04:00
  • Google推出根据人口特征进行竞价的广告功能

    2008-01-29 13:04:00
  • asp之家 网站运营 m.aspxhome.com