大流量网站解决访问量的服务器配置方法

日IP 40万访问量的sql数据库网站,如果同时在线人数在4000人左右,需要配置怎样的服务器和带宽?配置的服务器价格在多少左右?

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

大流量下的前端优化建议

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

1、动静分离

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

2、请求合并

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

3、静态资源走CDN加速

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

大流量网站解决访问量的服务器配置方法-1
大流量下的后端优化方案

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台数据库服务器配置看业务场景,一般的也够用,如果不够可弹性扩展。

本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 2466060800@qq.com 举报,一经查实,本站将立刻删除。