21andy 发表于 2013-12-20 19:41:21

wordpress 终极加速方法

本帖最后由 21andy 于 2013-12-20 19:48 编辑

既然大家这么喜欢WP,我就分享一点我的经验

不说缓存了,都说烂了,缓存不是解决的办法,缓存总是要过期的
其他的优化方法我不说了

说点特别的,性能可以提升不少
要让wordpress 快,用好内存
以下二个PHP扩展,二选一
1. apc
2. zend opcache
性能我测试过,差不多,开启它们

然后,把所有wp的PHP文件,全部直接放内存里
举例: 你的 wordpress 目录在 /var/www/wp

方法如下:
1. 复制一份 wp
cp -rf /var/www/wp /var/www/wp2

2. 删除非 php 文件
cd /var/www/wp2
find . -type f | grep -v ".php" | xargs rm -f

4. 放到内存里
cp -rf /var/www/wp2 /dev/shm

5. 可以删除原目录里的所有php文件
cd /var/www
find . -type f | grep ".php" | xargs rm -f

现在,我们已经把 wp 目录下的所有PHP文件过滤出来直接全部放内存里了
最后一步

6. 配置 nginx
location ~* \.php$ {
    root /dev/shm/wp;
    try_files $uri =404;
    fastcgi_passunix:/dev/shm/php-cgi.sock;
    include fastcgi_params;
}

7. 重启 nginx 和 php-fpm 搞定!

最新版的 wordpress 这样分开后
纯php文件一共 8.4MB,全放内存里
其他文件 4.7MB
如果部暑好了以后,不要安装插件
如果要安装,需要分离放一下






etoole 发表于 2013-12-20 19:49:22

这个是转的还是实践过的?
wp慢 主要是数据库大了 调用起来慢吧 光PHP加载 费不了多少时间

21andy 发表于 2013-12-20 19:55:21

本帖最后由 21andy 于 2013-12-20 19:58 编辑

原创
WP加载的文件太多,这样做可以解决WP的IO问题,不过WP很多代码写的太多余了,想快就自己开发
WP的数据库结构是硬伤,没办法,结构决定了要多表查询,加速数据库是另一部份内容了

21andy 发表于 2013-12-20 20:14:35

本帖最后由 21andy 于 2013-12-20 20:26 编辑

为了实贱证明, 我特意下载了一个最新干净的WP
什么插件也不装,APC关闭
打开默认首页
1. 原WP, 执行时间在0.60 - 0.67 秒间
2. 用我的办法, 页面执行时间提升到 0.15-0.20 秒间

然后,打开APC
1. 原WP, 执行时间提升到 0.29-0.38 秒间
2. 用我的办法,页面执行时间提升到 0.04-0.05 秒间

性能提升 3-4 倍

==============
我晕我傻了,不会算术
0.05 和0.30, 差6倍!!!


21andy 发表于 2013-12-20 20:15:51

加分加分,有问题可以问我

roror999 发表于 2013-12-20 20:18:27

谢谢。技术贴,我得先收藏起来

andy最近很活跃呀,多发言吧,你的经验流露出一点点,就会惠及很多人的



roror999 发表于 2013-12-20 20:29:30

21andy 发表于 2013-12-20 20:15 static/image/common/back.gif
加分加分,有问题可以问我

把你收款图到展示区贴一下,大家保证大把T币送来

fantasy163 发表于 2013-12-20 21:48:46

看了几遍,还是没看懂。。

jay1740 发表于 2013-12-20 22:40:06

放在内存里?
VPS重启后会丢失文件吗?

hardrock 发表于 2013-12-20 22:42:20

本帖最后由 hardrock 于 2013-12-20 22:48 编辑

apc=APC Object Cache Backend?
Compatible up to: 3.5.2
3.6 ,3.7 ,3.8 兼容吗?

第二个,wp上查不到啊


用在vps上,不能主机空间,apache不行,只能nginx



21andy 发表于 2013-12-20 22:47:23

fantasy163 发表于 2013-12-20 21:48 static/image/common/back.gif
看了几遍,还是没看懂。。

其实很简单,就是把/dev/shm当成硬盘的一个目录用啊,只不过把WP放里面
win的话,也可以装ramdisk来实现


21andy 发表于 2013-12-20 22:50:03

jay1740 发表于 2013-12-20 22:40 static/image/common/back.gif
放在内存里?
VPS重启后会丢失文件吗?

重启当然丢了
先把 /dev/shm/wp 备份一份,比如放在 /var/backup/wp
为了保证开机自动加载到内存目录,像这样弄

加这句到 /etc/rc.local 末尾
cp -rf /var/backup/wp /dev/shm
这样就OK了


21andy 发表于 2013-12-20 22:52:34

hardrock 发表于 2013-12-20 22:42 static/image/common/back.gif
apc=APC Object Cache Backend?
Compatible up to: 3.5.2
3.6 ,3.7 ,3.8 兼容吗?


apc 是缓存php解析后的代码用以加速PHP的

http://www.php.net/manual/en/book.apc.php

linux 安装很简单
比如 centos
yum -y install php-pecl-apc
然后编辑配置文件开启就可以了
/etc/php.d/apc.ini


hardrock 发表于 2013-12-20 23:24:08

我还以为是wp plugins , 原来不是

jay1740 发表于 2013-12-20 23:26:37

本帖最后由 jay1740 于 2013-12-20 23:31 编辑

21andy 发表于 2013-12-20 22:50 static/image/common/back.gif
重启当然丢了
先把 /dev/shm/wp 备份一份,比如放在 /var/backup/wp
为了保证开机自动加载到内存目录,像 ...
谢谢大牛分享!!!!!!!!!!!!!


newbie99 发表于 2013-12-20 23:48:04

谢谢分享!等以后开站后再用用

will86 发表于 2013-12-21 08:00:01

已经记录下来,做站的时候试一下

风吹不动 发表于 2013-12-21 08:02:47

typecho出新版了,速度杠杠滴

海淘饭 发表于 2013-12-21 08:04:38

高级加速方法 还没有vps留着以后待用

luguokankan 发表于 2013-12-21 13:14:36

lz可以试试php5.5 自带optimizer+
我看apc的维护者(国人)也说比apc更快.


页: [1] 2
查看完整版本: wordpress 终极加速方法