PHPCMS帮助手册

网站性能优化

网站性能优化

位置:系统设置----网站配置----性能优化

性能的优化能提高我们网站的负载能力,系统的优化要根据自己服务器的情况而定!

1、启用模板缓存自动更新:

关闭此功能可明显提高速度和系统负载,但是如果模板被修改系统不会自动更新缓存,必须手动更新模板缓存。

2、启用页面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 下如何实现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 >

3、缓存设置

在整体的运行过程中,数据库服务器 MySQL 的压力是最大的,不仅占用很多的内存和 cpu 资源,而且占用着大部分的磁盘 io 资源,连 PHP 的官方都在声称,说 PHP 脚本 80% 的时间都在等待 MySQL 查询返回的结果。由此可见,提高负载能力,降低 MySQL 的资源消耗迫在眉睫。 页面缓存就是其中的一个方面。 大家都知道,降低 MySQL 的资源消耗的方法除了使用高效率的 SQL 语句之外(当然,这一点 phpcms 在发布版本中都已经仔细研究了,所以每一句 SQL 都是很优化的),更直接的方法就是不去查询数据库。经过我们长期的分析发现,在网站实际运行过程中,用户主要浏览的是文章的详细页面,而这其中访问者的身份又以游客居多。根据这个规律,系统页面通过生成静态的 html 文件,这样可以有效的减轻数据库服务器的压力。
当然我们也可以以非静态化来运行,相关的缓存参数要根据自己的运行情况而定!

3、搜索设置

搜索时间间隔(秒): 两次搜索间隔小于此时间将被禁止,0 为不限制

4、搜索返回最多的结果数

每次搜索获取的最大结果数,建议设置为默认值 500,或在不超过 1500 范围内取值
这个对于一般的搜索的准确度的补充,因为搜索未必一下子就达到用户的搜索需要。那么可以设置为 100-200 已经足够了。
这个设置也是可以轻微减少服务器的负担。

站长教学网 免责声明