构建10亿级PV的大型网站设计要点(二):Web服务器层

 第一篇了介绍了网络架构的设计后,这里主要介绍接入层的服务器架构设计。假设该网站使用Java 开发业务应用。

    接入层可以按照应用分类,也可以按照部署分类分层。先按照部署分类设计,该分类一般把接入层分为三层:第一层是LoadBalance,用于管理一个VIP下多台接入应用服务器;第二层是Apache之类HTTP服务器,用来对静态资源的加速处理;第三层是Java应用服务器,如Jboss, Weblogic等。

     按照应用分类,一般是分为三类:第一类是静态资源的下载,如图片的下载,此类服务器一般是Apache之类HTTP服务器;第二类是动态资源的业务处理,一般是Jboss之类应用服务器;第三类也是动态资源的 处理,主要用于高性能的大并发的业务处理,此类业务应用一般是用C/C++开发,如Apache的Module,或则Lighttpd的Plugin之类。

 

    对于静态资源的下载服务器,从高性能角度和减少服务器部署的角度考虑,建议采用Lighttpd HTTP服务器,而不是采用传统的Apache服务器,原因是Apache是使用阻塞模式I/O操作,性能比较差,可以处理的并发能力有限,而lighttpd是使用异步I/O方式,处理资源下载的并发能力远远超过Apache。详细的介绍在我给公司同事分享的“深入HTTP服务器”的PPT里。

 

    对于Java应用服务器,目前一般是使用Jboss作为Java应用服务器的,而此服务器也是使用每连接/线程模型处理业务请求的,也存在KeepAlive问题,因此建议不要直接部署Jboss服务器在前端或则直接部署在VIP后面,而是前面加一层Apache服务器,Apache服务器和Jboss服务器之间使用Mod_JK进行通信, Mod_JK配置一定数量的连接池,如最大为1000。而对于浏览器与HTTP服务器之间的KeepAlive问题由Apache服务器解决。传统的Apache服务器其实也存在KeepAlive问题,只有Apache2.2x版本的Event模式(该详细介绍参见之前我的文章介绍)才解决了该问题,因此部署的使用请使用Apache2.2x版本Event模式。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值