.Net网站架构设计(二)Web服务器集群架构

什么是web负载均衡

服务器集群(Cluster)使得多个服务器节点能够协同工作,根据目的的不同,服务器集群可以分为:

  • 高性能集群:将单个重负载的请求分散到多个节点进行处理,最后再将处理结果进行汇总
  • 高可用集群:提高冗余单元,避免单点故障
  • 负载均衡集群:将大量的并发请求分担到多个处理节点。由于单个处理节点的故障不影响整个服务,负载均衡集群同时也实现了高可用性。

一般提到的负载均衡(Load Balance),是指实现负载均衡集群。负载均衡实现了横向扩展(Scale Out),避免纵向的升级(Scale Up)换代。

本文中的web负载均衡,特指能够分担web请求(http,https等)的负载均衡技术。


1、先介绍一下Web负载均衡都有哪些方式


任何的负载均衡技术都要想办法建立某种一对多的映射机制:一个请求的入口映射到多个处理请求的节点,从而实现分而治之(Divide and Conquer)。

这种映射机制使得多个物理存在对外体现为一个虚拟的整体,对服务的请求者屏蔽了内部的结构。

采用不同的机制建立映射关系,可以形成不同的负载均衡技术,常见的包括:

  • DNS轮询
  • CDN
  • IP负载均衡
         有关负载均衡详细技术请参考: 负载均衡

2、介绍一下Nginx配置

          2.1首先搭建Web1、Web2、Web3 ....多台IISWeb服务。(可以再不同的机器上建立不同的端口)

           例如

            Web1:192.168.128.101 :10001

            Web2:192.168.128.102 :10002         

            Web3:192.168.128.103 :10003

           ......

          2.2配置Nginx服务器

          Nginx server:192.168.128.100

          将Nginx解压到任意目录。

          进入目录:找到nginx配置

        

       配置如下:

        upstream  pcgroup.com

         server    192.168.128.101:10001 weight=1;

        server    192.168.128.102:10002  weight=2;

      server    192.168.128.103:10003 weight=1;

        }

      其中:pcgroup.com 是 集群名称

    

      使用cmd命令提示符将目录切换到nginx.exe所在目录。

       启动服务输入start nginx.exe。

        ok,你现在已经成功配置了负载均衡。

        注:改过核心配置文件后需要重新加载配置:nginx -s reload 。停止服务使用:nginx -s stop

3、IIS集群/.Net共享Session

        我们先看看IIS的几种Session模式

        ASP.NET中Session的状态保持是由web.config文件中的标记下的标记的mode属性来决定的。该属性有四种可能的值:Off、Inproc、StateServer和SQlServer。

        <sessionState mode="InProc" cookieless="false" timeout="20" />

       3.1 Inproc,依赖 aps.net,程序重启,或者bin文件内容变动,session丢失

       3.2 StateServer:<sessionState mode="StateServer"     stateConnectionString="tcpip=myserver:42424"     cookieless="false" timeout="20" />   

             克服了Inproc的缺点。但是StateServer重启,全部会话丢失。

       3.3 用SQL Server进行会话管理

          采用SQLserver将会话保存起来。

          我们可以采用3.3,3.2来实现session共享。

       3.4除IIS的session机制外,我们还可以利用Cookie ,把用户登录信息放在  缓存服务中,现在交常用的缓存服务有Redis,Memached;

       我强烈建议使用3.4 使用的方法。


4、Web服务的分布式。

     除以上负载均衡外,还可以将web服务的不同功能实现分开部署。

     一般讲静态文件,JS,Css,和样式图片专门由一台服务器提供服务。

     由文件服务集群专门提供文件资源。

      根据业务将web,分为Web接口服务,web页面服务。等,以缓解不同业务功能需求对服务器造成的压力。

     

  • 0
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值