日IP 40万访问量的网站,需要怎样配置服务器?

首先来说,日均IP达到40万(并不是QPS)其实也不算是特别大的流量,在这种访问量级下的站点该如何配置服务器呢,这主要看你的站点是什么类型的站点,提供的业务是什么样的。不管是什么类型的站点也是有共同的一些架构方案供我们选择,下面从前端、后端、硬件等方面介绍一下。

大流量下的前端优化建议

前端方面的优化很多运营者及个人站长并不重视,其实前端如果优化好了,可以节省一大部分的服务器资源,变相也就节省了硬件投入成本。优化方案建议如下:

1、动静分离

我们可以将动态请求(动态脚本开发的页面,比如操作数据库类的)与静态请求(如:图片、CSS、JS、音视频等)分离开来,因为静态资源可以走缓存,而动态内容可能对于实时性要求较高不能很好的利用缓存。当我们做好动静分离之后,可以把重心放在后端优化上,节省一部分资源给后端。

2、请求合并

我们知道,网页上的请求都需要经历三次握手过程,这在弱网环境下可能会导致耗时较长,另外所有的浏览器对于请求也是有并发限制的。通过请求合并技术我们可以把多个请求合并为一个请求,一次性由服务端返回给客户端,这样节省了不少中间过程的耗时,在弱网环境下效果特别明显。

3、静态资源走CDN加速

其实CDN内容分发技术本质上就是一种分布式部署方案CDN厂商在全国各个省市都有部署节点,这样能确保用户请求静态资源时都是就近从节点服务器获取的,加快了资源加载速度。另外一方面CDN节点服务器都有缓存机制,减少了回源频率,所以源站服务器上的请求也较少了。

大流量下的后端优化方案

1、数据库读写分离

如果站点动态类请求较多,那在大流量下数据库很容易产生性能瓶颈,单台数据库服务器是无法满足需求的,我们需要部署至少2台数据库节点,做好主从同步。在代码层或通过中间件实现读写分离,从从库中读、主库中写,能有效避免写锁带来的性能开销

2、NoSQL缓存热点数据,减少数据库查询频率

我们可通过NoSQL(如Redis)来缓存热点数据,这样数据库的查询次数减少了。

3、应用服务器做集群部署,负载均衡分流

Web服务器处理动态请求不像静态资源那样,静态资源找到后直接发回给客户端浏览器,而动态页面是需要经过处理后才能返回的。在高并发大流量场景下,单台Web服务器负载过高的话可以做个集群处理,通过Nginx做下负载均衡,将请求分发给多台服务器处理,减少单台服务器的压力

大流量网站的服务器配置方案

可以肯定的是单台服务器较难抗住40万日IP,建议是:

1、2台Web服务器

2台Web服务来处理Web请求,在其中一台上做负载均衡、另一台服务器上安装Redis。这2台服务器普通配置(2核+2G)即可。

2、2台数据库服务器

2台数据库服务器配置看业务场景,一般的也够用,如果不够可弹性扩展。

声明:本站发布的内容以原创、转载、分享网络内容为主,如有侵权,请联系电话:021-51697771-8029,邮箱:mj@cndns.com ,我们将会在第一时间删除。文章观点不代表本站立场,如需处理请联系我们。

热门TAG

热门视频