好多站长遇到过采集站数据库非常卡的情况,最近我也遇到过好几个站长过来问我这个事,所以写篇文章,下次谁再来问我,直接给你看这篇文章就行了。
采集站卡死说白了就是配置不够用了,而且一般都是采用的动态网站会出现这种情况,解决方案有两种:
1、加钱升级服务器
2、页面静态化
我形象的形容一下动态网站和静态网站,好让一些站长方便理解问题出在哪里。我把网站比喻成一杯奶茶,站长就是卖奶茶的,访客就是买奶茶的,有各种各样的网站,也有各种各样的奶茶,静态网站就像是瓶装奶茶,比如统一晴蓝阿萨姆(统一赶紧打钱),如下图所示:
顾客来买奶茶了,相当于是访客来访问网站,如果是静态网站,也就是你卖的是瓶装奶茶,只需要看一眼货架有没有奶茶,然后递给顾客就行了,这个过程非常简单。
动态网站就像是现做奶茶,比如蜜雪冰城的奶茶(也请打广告费给我),顾客来买奶茶了,需要店员现做,需要先按照一定的配方去做奶茶,最后还得封口,等等操作下来少说这个过程也得半分钟。
只是这么比喻可能还不是特别清楚,我再把这个数据量化一下,静态页面由nginx直接返回文件内容给访客,整个过程一般不超过1毫秒,动态页面得先生成页面,再返回数据给访客,常见的PHP动态页面,查询数据库然后根据数据库中的内容生成一个页面一般在几十毫秒到一两百甚至几百毫秒,比如Z博客程序在网页源码最底部有一个生成时间,可以观察一下自己的网站生成所需时间。
现做奶茶店如果顾客多了,店员做不过来了,就会出现排队等待的情况,相当于是网站打不开了,访客进不来了,服务器太卡了,我遇到的这几个采集站长其实都是这种情况,动态网站服务器吃不消,那这时候怎么办呢?最简单的方法就是加钱,加大服务器配置,相当于是多招几个做奶茶的店员。
当然这个比喻也不完全形象,因为奶茶是一杯一杯做,卖出去一杯少一杯,但网站静态文件是可以复制的,只需要生成一次页面,是一直可以访问的,不管多少人访问,这个文件都还在。
那你说静态网站就不会卡了吗?如果访客多了肯定也会卡,就像你店员来得及递奶茶,但你的店门面如果只有一间的话,也进不来几个人,这时候限制速度的瓶颈就变成了带宽(门店门面大小),这种情况就只有花钱升级服务器带宽了,或者通过压缩图片来减少带宽的占用。
还有一种省钱的方法就是把现做奶茶变成瓶装奶茶,也就是网站静态化,不管有没有顾客,先做一些奶茶,如果有人买,直接递给他就完事了。
升级服务器就不说了,直接加钱就行了,8核升级16核,16核升级32核等等,那网站怎么静态化呢?常见的CMS程序都有静态化的插件,比如WP和Z博客,应用商店都有相应的插件,我这里不做推荐,根据自己的情况去搜就行了,想买贵的就买贵的,想要免费的也可以花点时间找找,都有的。
用插件静态化已经是最简单的方法了,如果自己有能力,也可以写程序生成HTML文件后,直接上传到服务器,进一步减少服务器的压力。