Phpcms 2008/网站性能优化
网站性能优化[ ]
位置:系统设置----网站配置----性能优化
性能的优化能提高我们网站的负载能力,系统的优化要根据自己服务器的情况而定!
启用模板缓存自动更新[ ]
关闭此功能可明显提高速度和系统负载,但是如果模板被修改系统不会自动更新缓存,必须手动更新模板缓存。
启用页面Gzip压缩[ ]
GZIP介绍:
将页面内容以gzip压缩后传输,可以加快传输速度,需 PHP 4.0.4 以上且支持 Zlib 模块才能使用,GZIP 最早由 Jean-loup Gailly 和 Mark Adler 创建,用于 UNIX 系统的文件压缩。我们在 Linux 中经常会用到后缀为 .gz 的文件,它们就是 GZIP 格式的。现今已经成为 Internet 上使用非常普遍的一种数据压缩格式,或者说一种文件格式。
HTTP协议上的 GZIP 编码是一种用来改进 WEB 应用程序性能的技术。大流量的 WEB 站点常常使用 GZIP 压缩技术来让用户感受更快的速度。所以这个在基本支持的条件的情况下最好都打开。
在Apache2.x之后的版本,模块名不在叫gzip,而叫mod_deflate,现在以Apache2.2.x为例说明gzip的配置, 如果要开启gzip的话,一定要打开下面二个模块.
LoadModule headers_module modules/mod_headers.so LoadModule deflate_module modules/mod_deflate.so
- 设置压缩比率,取值范围在 1(最低) 到 9(最高)之间,不建议设置太高,虽然有很高的压缩率,但是占用更多的CPU
< ifmodule deflate_module> DeflateCompressionLevel 3 AddOutputFilter DEFLATE html xml php css < Location /> SetOutputFilter DEFLATE BrowserMatch ^Mozilla/4 gzip-only-text/html BrowserMatch ^Mozilla/4\.0[678] no-gzip BrowserMatch \bMSIE !no-gzip !gzip-only-text/html SetEnvIfNoCase Request_URI \\.(?:gif|jpe?g|png)$ no-gzip dont-vary SetEnvIfNoCase Request_URI .(?:exe|t?gz|zip|bz2|sit|rar)$ no-gzip dont-vary SetEnvIfNoCase Request_URI .(?:pdf|mov|avi|mp3|mp4|rm)$ no-gzip dont-vary #对代理的设置 Header append Vary User-Agent env=!dont-vary < /Location> #声明输入流的byte数量 DeflateFilterNote Input instream #声明输出流的byte数量 DeflateFilterNote Output outstream #声明压缩的百分比 DeflateFilterNote Ratio ratio #声明日志类型 LogFormat '"%r" %{outstream}n/%{instream}n (%{ratio}n%%)' deflate CustomLog E:/wamp/logs/deflate_log deflate </ifmodule >
缓存设置[ ]
在整体的运行过程中,数据库服务器 MySQL 的压力是最大的,不仅占用很多的内存和 cpu 资源,而且占用着大部分的磁盘 io 资源,连 PHP 的官方都在声称,说 PHP 脚本 80% 的时间都在等待 MySQL 查询返回的结果。由此可见,提高负载能力,降低 MySQL 的资源消耗迫在眉睫。
页面缓存就是其中的一个方面。大家都知道,降低 MySQL 的资源消耗的方法除了使用高效率的 SQL 语句之外(当然,这一点 phpcms 在发布版本中都已经仔细研究了,所以每一句 SQL 都是很优化的),更直接的方法就是不去查询数据库。经过我们长期的分析发现,在网站实际运行过程中,用户主要浏览的是文章的详细页面,而这其中访问者的身份又以游客居多。根据这个规律,系统页面通过生成静态的 html 文件,这样可以有效的减轻数据库服务器的压力。
当然我们也可以以非静态化来运行,相关的缓存参数要根据自己的运行情况而定!
搜索设置[ ]
搜索时间间隔(秒):两次搜索间隔小于此时间将被禁止,0 为不限制
搜索返回最多的结果数[ ]
每次搜索获取的最大结果数,建议设置为默认值 500,或在不超过 1500 范围内取值,这个对于一般的搜索的准确度的补充,因为搜索未必一下子就达到用户的搜索需要。那么可以设置为 100-200 已经足够了。这个设置也是可以轻微减少服务器的负担。