选择伪静态还是真静态
1、使用真静态和伪静态对SEO来说没有什么区别
2、使用真静态可能将导致硬盘损坏并将影响站点性能(这个实在是个谬论,非静态的对硬盘的读取次数胜过真静态)
3、使用伪静态将占用一定量的CPU占有率,大量使用将导致CPU超负荷
4、最重要的一点,我们要静态是为了SEO
5、真静态的访问速度明显比伪静态的访问速度要高
所以:
1、使用真静态的方法可以直接排除了,因为无论怎么生成,对硬盘来说都是很伤的。(这个完全是乱讲了,真静态可以提高网站的性能,减少数据库的访问压力,减少CPU和内存的压力。)
2、既然真伪静态的效果一样,我们就可以选择伪静态了。
3、但是伪静态大量使用会造成CPU超负荷。
4、所以我们只要不大量使用就可以了。
5、既然静态只是给搜索引擎爬虫看的,我们只需要伪静态给搜索引擎爬虫就行了,不需要给用户使用。
6、所以我们只要在专门提供给搜索引擎爬虫[3](搜索引擎机器人)爬的Archiver中使用伪静态就可以了。
在网上流传了很多关于网站生成HTML静态会对硬盘有损伤的说法(当然这里的损伤概念是指相比普通的应用程序而言,非指任何系统和程序都会让硬盘折寿类型的常规损伤)。但通过Google、百度并没有发现出现过这个问题的真实例子存在,大部分都是道听途说、人云亦云并没有一个比较合理的解释,下面就这个问题来作一个简单的分析。
首先,假设“网站生成HTML静态会对硬盘有损耗”这个说法成立,这个问题影响最大的应该是IDC行业中的虚拟主机服务商,因为主流CMS、论坛系统、网店系统、博客系统大多数都支持生成HTML静态功能,而且一般情况下一台服务器中都会存在100-300个虚拟主机同时运行,在有如此大的硬盘损耗的情况下,国内竟然没有一家虚拟主机服务商限制生成HTML静态站点在其虚拟主机上运行,这个现象是不是反常呢?是不是由于硬盘价格比较低虚拟主机服务商不在乎了呢?其实不然,因为想在短时间内恢复100-300个网站的数据并不是一件简单的事情,同时基于网站稳定性和硬件成本方面的考虑虚拟主机服务商不可能不在乎。所以在IDC行业中“网站生成HTML静态会对硬盘有损耗”一说法是不成立的。
其次,假设“网站生成HTML静态会对硬盘有损耗”这个说法成立,那为什么还会有那么多主流CMS、论坛、网店、博客软件公司去研发这个功能呢?这个现象是不是反常呢?因为生成HTML静态功能可能造成用户硬盘损坏而引起数据丢失,软件开发公司是肯定需要承担相应责任的,应该没有哪家软件公司会在增加自己研发成本的基础上去开发一个对自己有负面影响的功能。所以在软件行业中“网站生成HTML静态会对硬盘有损耗”一说法是不成立的。
大家都知道对硬盘的操作主要分为“读”与“写”两大部分,先分析生成HTML静态对硬盘“读”的影响:
现在以最常见的PHP动态网站为例,普通的PHP网站的执行过程是先读取PHP文件、然后根据PHP文件中的代码读取数据库中的数据,最后输出到访问者的浏览器中进行显示。在这个执行过程中PHP文件至少读取一次(如果代码中包含include之类的语句的话还需要读取更多次),数据库至少读取一次(一般情况下需要读取多次),在这个过程完成之前一般需要读取硬盘2-20次左右,当然不同的WEB服务器、数据库、系统对IO的操作过程也不一样,但基本可以初步了解到这个实现基本过程。
再来看“生成HTML静态”网站的执行过程,很明显执行过程就是直接读取HTML文件再传输到访问者的浏览器进行显示,对硬盘的读取操作只有1次。
根据以上分析可以得出结论,“生成HTML静态”网站只有普通动态网站读取硬盘频率的1/10,再加上“生成HTML静态”网站可以利用浏览器的页面缓存,对硬盘读取的频率可以进一步降低,“生成HTML静态”网站在硬盘的“读”操作方面没有任何损伤,反而可以更好的保护硬盘。
明白了生成HTML静态对硬盘“读”的影响,我们再来看看生成HTML静态对硬盘“写”的影响:
还是以现在最常见的PHP动态网站为例,PHP动态网站在添加文章时直接把数据写入了数据库,对硬盘进行了一次写操作。而“生成HTML静态”网站在写入数据库的同时把数据又写入了文件,对硬盘进行了两次写操作。但在实际项目中,我们只会把修改频率非常低的内容生成HTML静态,比如文章、商品内容,这些页面的写频率本身就非常非常低的,比如我们站点发布的文章在发布后几乎就不会再进行修改了。对于一个拥有10万篇文章的站点来说,平均一篇文章修改1次,对硬盘的写入次数也才20万次,一般服务器硬盘的使用寿命都在5-10年左右,其实再放大数万倍也不至于达到能够损伤硬盘的地步。不相信的朋友可以下载DiskCountersView软件查看一下你自己的电脑在24小时内读写硬盘的次数,在普通情况下24小时内读写硬盘的次数就会超过了千万次,如此计算20万次硬盘写入几乎可以忽略不计。
根据以上的分析可以得出结论,“生成HTML静态”网站比普通动态网站硬盘写入频率高2倍,但由于生成“生成HTML静态”的内容几乎不会再进行修改,所以对硬盘的写入次数可以忽略不计,不会对硬盘造成任何损伤。
总结:在最有说话权的IDC行业和软件行业中“生成HTML静态页面对硬盘有损伤”的说法并不成立,而且通过技术分析也证明生成HTML静态页面并不会对硬盘造成任何损伤,相反还可以极大的降低对硬盘、数据库的读取操作频率,提高站点访问速度。
伪静态和真静态的评论
真正的静态化和伪静态还是有本质的区别的。为浏览用户处理一个纯粹html和一个调用多个数据的php在CPU的使用率方面明显前者少。记得原来有个人说html下载硬盘读写频繁,他这么说好像读取数据库不用读写磁盘似的,何况还有一大堆缓存的零散php也是放在硬盘的,这些读取不用磁盘操作么?
读取单个html+图片Flash等附件就可以实现的目的,何苦要读数据库又要读php缓存文件又要重新整合数据输出再+图片Flash等附件这么大费周章呢?CMS首页不需要很多的互动的,论坛那一套不应该拿到这里来用,相反应该更多考虑的是:美观!兼容!信息的直观!性能!还有稳定!
评论(0人参与,0条评论)
发布评论
最新评论