前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >使用memcache对wordpress优化,提速

使用memcache对wordpress优化,提速

作者头像
猿哥
发布2019-07-25 23:05:33
6940
发布2019-07-25 23:05:33
举报
文章被收录于专栏:Web技术布道师Web技术布道师

环境:

一个本地开发环境

一个部署在虚拟机中( 虚拟机安装memcache缓存),然后用这个优化的版本跟本地开发环境对比.

wordpress版本:4.9.5

php:5.6版本

1,首先在主题的functions.php文件中,加入以下监控统计代码

复制代码

function performance( $visible = true ) {

$stat = sprintf( '%d queries in %.3f seconds, using %.2fMB memory',

get_num_queries(),

timer_stop( 0, 3 ),

memory_get_peak_usage() / 1024 / 1024

);

// echo $visible ? $stat : "<!-- {$stat} -->" ;

echo "<div class='container_12'><p class='grid_12 footer clearfix'>$stat</p></div>";

}

add_action( 'wp_footer', 'performance', 20 );

复制代码

样式可以根据自己的主题定制,这段代码可以统计出页面有多少次数据库查询。总共花了多少秒,耗费多少内存,类似如下的样式:

16 queries in 1.306 seconds, using 12.98MB memory

2,安装memcached服务端

[root@bogon wp-content]# ps -ef | grep memcached

root 5050 3466 0 14:44 pts/1 00:00:00 grep memcached

root 29269 1 0 13:57 ? 00:00:02 /usr/local/memcached/bin/memcached -d -l 127.0.0.1 -p 11211 -u root -m 64 -c 1024 -P /var/run/memcached.pid

3,安装php memcache扩展

wget http://pecl.php.net/get/memcache-3.0.8.tgz,用phpize外挂方式安装,安装完成之后,在php.ini中启用,再重启php,确定memcache已经加载

复制代码

memcache

memcache support enabled

Version 3.0.8

Revision $Revision: 329835 $

Directive Local Value Master Value

memcache.allow_failover 1 1

memcache.chunk_size 32768 32768

memcache.compress_threshold 20000 20000

memcache.default_port 11211 11211

memcache.hash_function crc32 crc32

memcache.hash_strategy consistent consistent

memcache.lock_timeout 15 15

memcache.max_failover_attempts 20 20

memcache.protocol ascii ascii

memcache.redundancy 1 1

复制代码

4,下载wordpress memcache插件

wget https://downloads.wordpress.org/plugin/memcached.3.0.1.zip

把object-cache.php解压到wp-content目录下

[root@bogon wp-content]# ls

index.php languages object-cache.php package.xml plugins themes upgrade uploads

[root@bogon wp-content]#

最后比较服务器

安装了memcache缓存的版本,首页性能:

3 queries in 0.451 seconds, using 13.56MB memory

没有启用缓存的系统,首页性能:

16 queries in 1.336 seconds, using 12.98MB memory

可以看见有很明显的提升,其他页面都会被优化,缓存到

启用opcache,再次提速:

3 queries in 0.129 seconds, using 3.48MB memory

php.ini中opcache需要这样加载:

zend_extension=opcache.so

opcache相关配置:

复制代码

[opcache]

; Determines if Zend OPCache is enabled

opcache.enable=1

; Determines if Zend OPCache is enabled for the CLI version of PHP

opcache.enable_cli=1

; The OPcache shared memory storage size.

opcache.memory_consumption=528

; The amount of memory for interned strings in Mbytes.

opcache.interned_strings_buffer=8

; The maximum number of keys (scripts) in the OPcache hash table.

; Only numbers between 200 and 100000 are allowed.

opcache.max_accelerated_files=10000

; The maximum percentage of "wasted" memory until a restart is scheduled.

;opcache.max_wasted_percentage=5

"php.ini" 2051L, 74201C written

[ldap]

; Sets the maximum number of open links or -1 for unlimited.

ldap.max_links = -1

[mcrypt]

; For more information about mcrypt settings see http://php.net/mcrypt-module-open

; Directory where to load mcrypt algorithms

; Default: Compiled in into libmcrypt (usually /usr/local/lib/libmcrypt)

;mcrypt.algorithms_dir=

; Directory where to load mcrypt modes

; Default: Compiled in into libmcrypt (usually /usr/local/lib/libmcrypt)

;mcrypt.modes_dir=

[dba]

;dba.default_handler=

[opcache]

; Determines if Zend OPCache is enabled

opcache.enable=1

; Determines if Zend OPCache is enabled for the CLI version of PHP

opcache.enable_cli=1

; The OPcache shared memory storage size.

opcache.memory_consumption=528

; The amount of memory for interned strings in Mbytes.

opcache.interned_strings_buffer=8

; The maximum number of keys (scripts) in the OPcache hash table.

; Only numbers between 200 and 100000 are allowed.

opcache.max_accelerated_files=10000

复制代码

作者:ghostwu, 出处:http://www.cnblogs.com/ghostwu 博客大多数文章均属原创,欢迎转载,且在文章页面明显位置给出原文连接

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2018-04-20,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 PHP技术大全 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档