|
机房的选择:
在选择机房的时候,根据用户的地域分布,可以选择双线或多线机房,但更多时候,可能多线机房才是最合适的。越大的城市,机房价格越贵,从成本的角度看可以在一些中小城市托管服务器,比如说
北京的公司可以考虑把服务器托管在天津、廊坊等地,不是特别远,但是价格会便宜很多。
带宽的选择:
通常我们在架构网站的时候,会设定一些目标,比如网站每天要能承受干万門∨的访问量,这时我们要估算一下大概需要多大的带宽。计算带宽大小主要有两个指标(峰值流量和页面大小),我们先做出必要的假设:
1.峰值流量是平均流量的3倍;
2.每次访问平均的页面大小是100kB左右
如果1000万PV的访问量在一天内平均分布,每秒大约120次访问,如果按平均每次访问页面的大小是100kB字节计算,120次访问总计大约就是1200k8B。字节的单位是Byte,而带宽的单位是b,它们之间的关系是1Bye=8bit,所以12000kBye大致就相当于96000kb,也就是90Mbps的样子。实际上,我们的网站必须能在峰值流量时保持正常运行状态,所以按照假设的峰值流量计算,真实带宽的需求应该在270Mbps左右。
当然,这个结论是根据前面提到的两点假设得出的,具体值则需要根据公司实际情况来计算。
服务器的选择:
一般情况下网站需要的服务器包括图片服务器、页面服务器、数据库服务器、应用服务器、日志服务器等。
对于访问量大的网站,图片服务器和页面服务器的分离是相当必要的。我们可以在图片服务器上运行Lighttpd,在页面服务器上运行Ngnⅸx,当然也可以选择别的。我们也可以扩展成多台图片服务器和多台页面服务器同时运行,并设置相关域名,如imgs.domain.com和w. domain. com,页面里的图片路径都使用绝对路径,如src="htt://imgs.domain.com/xxx. gif">,然后配置DNS轮循,达到最初级的负载均衡。服务器多了就不可避免地涉及同步的问题,这时可以使用 Rsync软件来完成.
数据库服务器是重中之重,因为网站的瓶颈问题大多出在数据库身上。现在一般的中小网站多使用MSQL数据库。一般而言,使用MySL数据库的时候,我们应该配置为一个主从(一主多从)结构,主数据库服务器使用 iNnodB表结构,从数据服务器使用 MyISAM表结构。这样充分发挥它们各自的优势,而且这样的主从结构分离了读写操作,降低了读操作的压力。我们还可以设定一个专门的从服务器作为备份服务器,有时候还需要借助 Memcached之类的第三方软件,以便适应更大访问量的要求。MSQL在后面的章节有具体介绍.
如果有条件,可以应用独立的日志服务器。一般网站的做法是把页面服务器和日志服务器合二为一,在凌晨访问量不大的时候计划任务运行前一天的日志计算。不过对于百万级访问量而言,即使按天归档,也会消耗很多时间和服务器资源来计算。所以分离单独的日志服务器还是有好处的,这样不会影响正式服务器的工作状态.
|
|