EEfaq论坛-赚客自留地

 找回密码
 免费注册
查看: 1816|回复: 37

wordpress 终极加速方法

  [复制链接]
发表于 2013-12-20 19:41:21 | 显示全部楼层 |阅读模式
本帖最后由 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_pass  unix:/dev/shm/php-cgi.sock;
    include fastcgi_params;
}

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

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






评分

参与人数 14e币 +26 收起 理由
z11zhang + 2 楼主,你知道的太多了
sammy + 2
caaol + 1 鼓勵
nff + 1 有見地
lomboz + 1 楼主好牛
DDOS + 1 不错
hudba + 2 /dev/shm 真不错
ryan2101 + 1
anisor + 1 楼主V5
玄影 + 1 楼主好牛
hardrock + 1 有見地
yangjianfeng + 4 有見地
roror999 + 3 希望多多分享。
月光飞燕 + 5

查看全部评分

发表于 2013-12-20 19:49:22 | 显示全部楼层
这个是转的还是实践过的?
wp慢 主要是数据库大了 调用起来慢吧 光PHP加载 费不了多少时间
回复 支持 反对

使用道具 举报

 楼主| 发表于 2013-12-20 19:55:21 | 显示全部楼层
本帖最后由 21andy 于 2013-12-20 19:58 编辑

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

回复 支持 反对

使用道具 举报

 楼主| 发表于 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倍!!!



回复 支持 反对

使用道具 举报

 楼主| 发表于 2013-12-20 20:15:51 | 显示全部楼层
加分加分,有问题可以问我
回复 支持 反对

使用道具 举报

发表于 2013-12-20 20:18:27 | 显示全部楼层
谢谢。技术贴,我得先收藏起来

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



回复 支持 反对

使用道具 举报

发表于 2013-12-20 20:29:30 | 显示全部楼层
回复 支持 反对

使用道具 举报

发表于 2013-12-20 21:48:46 | 显示全部楼层
看了几遍,还是没看懂。。
回复 支持 反对

使用道具 举报

发表于 2013-12-20 22:40:06 | 显示全部楼层
放在内存里?
VPS重启后会丢失文件吗?
回复 支持 反对

使用道具 举报

发表于 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



回复 支持 反对

使用道具 举报

 楼主| 发表于 2013-12-20 22:47:23 | 显示全部楼层
fantasy163 发表于 2013-12-20 21:48
看了几遍,还是没看懂。。

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


回复 支持 反对

使用道具 举报

 楼主| 发表于 2013-12-20 22:50:03 | 显示全部楼层
jay1740 发表于 2013-12-20 22:40
放在内存里?
VPS重启后会丢失文件吗?

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

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


回复 支持 反对

使用道具 举报

 楼主| 发表于 2013-12-20 22:52:34 | 显示全部楼层
hardrock 发表于 2013-12-20 22:42
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


回复 支持 反对

使用道具 举报

发表于 2013-12-20 23:24:08 | 显示全部楼层
我还以为是wp plugins , 原来不是
回复 支持 反对

使用道具 举报

发表于 2013-12-20 23:26:37 | 显示全部楼层
本帖最后由 jay1740 于 2013-12-20 23:31 编辑
21andy 发表于 2013-12-20 22:50
重启当然丢了
先把 /dev/shm/wp 备份一份,比如放在 /var/backup/wp
为了保证开机自动加载到内存目录,像 ...

谢谢大牛分享!!!!!!!!!!!!!


回复 支持 反对

使用道具 举报

发表于 2013-12-20 23:48:04 | 显示全部楼层
谢谢分享!等以后开站后再用用

评分

参与人数 1e币 +1 收起 理由
baron + 1 鼓勵

查看全部评分

回复 支持 反对

使用道具 举报

发表于 2013-12-21 08:00:01 | 显示全部楼层
已经记录下来,做站的时候试一下

回复 支持 反对

使用道具 举报

发表于 2013-12-21 08:02:47 | 显示全部楼层
typecho出新版了,速度杠杠滴
回复 支持 反对

使用道具 举报

发表于 2013-12-21 08:04:38 | 显示全部楼层
高级加速方法 还没有vps留着以后待用
回复 支持 反对

使用道具 举报

发表于 2013-12-21 13:14:36 | 显示全部楼层
lz可以试试php5.5 自带optimizer+
我看apc的维护者(国人)也说比apc更快.


回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 免费注册

本版积分规则

QQ|联系我们|Archiver|手机版|小黑屋|EEfaq论坛

GMT+8, 2024-11-23 18:10

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表