Cachify分析
Jmeter性能分析
wocommerce编辑页面
sql:81 页面加载0.25s
安装cachify插件
- 用wc创建页面,加入wc的产品
sql74条了,速度提升不是很明显,目前考虑从sql方面入手,直接撸源码
add_action(
'plugins_loaded',
array(
'Cachify',
'instance',
)
);
register_activation_hook(
__FILE__,
array(
'Cachify',
'on_activation',
)
);
register_deactivation_hook(
__FILE__,
array(
'Cachify',
'on_deactivation',
)
);
register_uninstall_hook(
__FILE__,
array(
'Cachify',
'on_uninstall',
)
);
add_action(
'cli_init',
array(
'Cachify_CLI',
'add_commands',
)
);
spl_autoload_register( 'cachify_autoload' );
function cachify_autoload( $class ) {
if ( in_array( $class, array( 'Cachify', 'Cachify_APC', 'Cachify_DB', 'Cachify_HDD', 'Cachify_MEMCACHED', 'Cachify_CLI' ) ) ) {
require_once(
sprintf(
'%s/inc/class-%s.php',
CACHIFY_DIR,
strtolower( str_replace( '_', '-', $class ) )
)
);
}
}
因为选择的缓存方式为数据库,so着重关注class-cachify-db类 插件加载和插件激活调用了Cachify类的instance 和on_activation 两个函数 Jmeter显示的qps/tps在2.1左右 页面加载速度在0.6秒左右
开启Cachify QPS最终在18.4 页面加载速度0.7秒左右
两次对比,加载速度方面并无明显的差别,但在性能方面的qps却有显著的区别 对比后台进程,发现开启插件后的fpm使用CPU效率提升显著,基本都在90%以上,而不开启cachify插件的情况下,cpu的利用率参差不齐,平均不超过50%。
针对fpm进程对cpu利用率的问题,解决思路:
- 修改php的配置,ini_set>php-fpm.conf>php.ini,修改php-fpm进程模式
pm = static
发现在开发cachify插件的前提下,qps也有了显著的提升,达到12
|