使用.net开发程序的多服务器负载均衡问题

来源:互联网 发布:指南针炒股软件注销 编辑:程序博客网 时间:2024/05/29 07:37
环境:
1. 负载均衡 几台Web Server
2. State Server模式存储状态Session, 单独一台服务器用作State Server.
3. Web Server 与 State Sever网络相通,且State Server中的asp.net state service保证启动。

4. 采用一台资源服务器来进行资源共享。
 
1、负载均衡的定义:
    负载均衡是由多台服务器以对称的方式组成一个服务器集合,每台服务器都具有等价的地位,都可以单独对外提供服务而无须其他服务器的辅助。通过某种负载分担技术,将外部发送来的请求均匀分配到对称结构中的某一台服务器上,而接收到请求的服务器独立地回应客户的请求。
实例:
比如,一个性保健品网站[www.mdhdi.cn]),有三台Web服务器A、B和C,分别有各自的内部IP,三台都映射到同一个MAC IP,在A、B和C中分别部署相同的一个网站程序,然后在交换机中进行负载配置。当外面用户访问性保健品网站[www.mdhdi.cn]时,通过映射进入防火墙内部并指向内部ip,然后进入四层交换机,四层交换机根据A、B和C的压力(或者某种规则,可设定)进行判断选择进入哪台服务器。
    由于做了负载均衡,几台服务器需要需要进行会话共享。可以采用数据库共享,也可以采用StateServer共享,一般用后者就够了。资源也同理。
 
资源共享需要注意的问题:
1、可以采用直接共享方式写入,如//192.168.0.20/Resource/
    由于采用了负载均衡,涉及到用户上传的资料,需要用一个共享的地方来进行保存,以便负载了的多台服务器都能正常访问。
    此时Web.Config中需要配置
    
否则,可能会出现下面错误信息:
登录失败: 未知的用户名或错误密码。
说明: 执行当前 Web 请求期间,出现未处理的异常。请检查堆栈跟踪信息,以了解有关该错误以及代码中导致错误的出处的详细信息。
异常详细信息: System.IO.IOException: 登录失败: 未知的用户名或错误密码。
 
2、采用Net Use的方式进行资源写入。


原创粉丝点击