阿里云-云小站(无限量代金券发放中)
【腾讯云】云服务器、云数据库、COS、CDN、短信等热卖云产品特惠抢购

LAMP-各PHP加速器性能剖析

399次阅读
没有评论

共计 2805 个字符,预计需要花费 8 分钟才能阅读完成。

参与测试的加速器:Xcache,Opcache,hhvm

Xcache 简介

前面已经介绍了 PHP 加速器的原理和功用(参见 LAMP-PHP-fpm 服务器配置),xcache 作为目前使用广泛的 PHP 加速器之一,其性能比早期的 eAccelerator 加速器要优良,故本次就对比一下 PHP 程序在执行时加速器 xcache 对其的性能影响。

LAMP+Xcache 环境搭建 http://www.linuxidc.com/Linux/2014-05/101087.htm

FastCGI 模式编译安装 LAMP+XCache http://www.linuxidc.com/Linux/2014-03/99091.htm

FreeBSD 安装配置 XCache http://www.linuxidc.com/Linux/2012-06/63312.htm

CentOS 6.2 下 php-5.2.17 安装配置 XCache3 加速器 http://www.linuxidc.com/Linux/2012-11/73686.htm

安装 xcache

# 安装

tar xf xcache-3.0.3.tar.gz

cd xcache-3.0.3

/usr/local/php/bin/phpize # xcache 是作为 php 的外接模块安装的

./configure –enable-xcache –with-php-config=/usr/local/php/bin/php-config

make && make install

# 安装结束时,会出现类似如下行:

Installing shared extensions:    /usr/local/php/lib/php/extensions/no-debug-non-zts-20100525/

# 编辑 php.ini,整合 php 和 xcache:

# 首先将 xcache 提供的样例配置导入 php.ini

mkdir /etc/php.d # 这是前面安装 PHP 时配置的配置文件扫描目录

cp xcache.ini /etc/php.d # xcache.ini 文件在 xcache 的源码目录中。

# 接下来编辑 /etc/php.d/xcache.ini,找到 extension 开头的行,修改为如下行:

extension = /usr/local/php/lib/php/extensions/no-debug-non-zts-20100525/xcache.so

# 如果 php.ini 文件中有多条 extension 指令行,要确保此新增的行排在第一位。

# 查看 xcache 是否已安装成功:

/usr/local/php/bin/php -m |grep -i xcache

Opcache 简介

新一代 PHP 加速器,由 Zend 公司研发,其实现原理与 Xcache 类似,都是把 PHP 执行后的数据缓冲到内存中从而避免重复的编译过程,能够直接使用缓冲区已编译的代码从而提高速度,降低服务器负载,但性能却比 Xcache 更加优越,详见测试结果

安装 Opcache

wget http://pecl.php.net/get/zendopcache-7.0.2.tgz

tar xzf zendopcache-7.0.2.tgz

cd zendopcache-7.0.2

/usr/local/php/bin/phpize

./configure –with-php-config=/usr/local/php/bin/php-config

make

make install

# 配置文件设置,可直接在 php.ini 的最后添加如下内容,但在此在 PHP 配置文件的扫描目录 php.d 下配置新文件 opcache.ini,易于管理,php-config-scan-dir 是在编译安装 PHP 时定义的

# vi /etc/php.d/opcache.ini

[opcache]

zend_extension=/usr/local/php/lib/php/extensions/no-debug-non-zts-20100525/opcache.so

opcache.memory_consumption=128 # 分配的内存大小,单位 MB,即能够存储多少预编译的 PHP 代码

opcache.interned_strings_buffer=8 # interned 字符串占内存大小,单位 MB

opcache.max_accelerated_files=4000 # 允许缓存的文件最大数量

opcache.revalidate_freq=60 # 多长时间检查文件时间戳,以改变共享内存分配,单位为 s

opcache.fast_shutdown=1 # 是否开启快速关闭队列功能,1 为开启

opcache.enable_cli=1 # 允许缓存 CLI 下的 PHP 程序

# 检查模块安装成功:/usr/local/php/bin/php -m |grep -i opcache

hhvm 简介

HipHop VM(HHVM) 是 Facebook 推出的用来执行 PHP 代码的虚拟机,它是一个 PHP 的 JIT(Just-In- Time)编译器,同时具有产生快速代码和即时编译的优点;

hhvm 将 PHP 代码编译转换成 C ++ 程序来执行,执行效率得到显著提升;

根据 Facebook 透漏,HHVM 在速度方面获得了显著改进,比目前使用的 PHP 解释器快 60%,而使用内存减少 90%

HHVM 宣布支持 FastCGI http://www.linuxidc.com/Linux/2013-12/94254.htm

安装 hhvm

因为目前 hhvm 还处以研发阶段,国内用于生产环境的还很少,安装所需的环境比较复杂(如 CentOS6.5 下的 boost-system 和 boost-filesystem 的版本就过低),故本人还在调试测试阶段,等出了测试结果,再将 hhvm 的测试结果一并贴出。

测试步骤

# 另找一台虚拟机,对 HTTPD 服务器(192.168.1.110)进行压力测试

# 测试工具使用 Apache 自带的基准测试工具 ab 即可

# 测试方法如下:

ab -c 20 -n 2000 http://192.168.1.110:8080/index.php

# 注:测试采用 20 并发,在不影响访问的情况下,查看 xcache 加速器的加速效果;测试页面使用上一讲刚部署的 phpMyAdmin 的登录页面 index.php 即可

# 注:为了更好的测试出 PHP 加速器的缓存特性,可连续多测试几次,得到稳定值

测试结果对比

LAMP- 各 PHP 加速器性能剖析

从上图可以看出,PHP 加速器对 PHP 程序的执行过程加速明显;综合每秒的请求数和 PHP 服务器的负载来看:

xcache 使得 PHP 程序的执行效率提升了 3 - 4 倍;

Opcache 使得 PHP 程序的执行效率提升了 6 - 7 倍;

据说 hhvm 对 PHP 程序的加速效果更加强悍。

基于 Ubuntu 14.04 下搭建 HHVM 环境 http://www.linuxidc.com/Linux/2014-05/101747.htm

正文完
星哥玩云-微信公众号
post-qrcode
 0
星锅
版权声明:本站原创文章,由 星锅 于2022-01-20发表,共计2805字。
转载说明:除特殊说明外本站文章皆由CC-4.0协议发布,转载请注明出处。
【腾讯云】推广者专属福利,新客户无门槛领取总价值高达2860元代金券,每种代金券限量500张,先到先得。
阿里云-最新活动爆款每日限量供应
评论(没有评论)
验证码
【腾讯云】云服务器、云数据库、COS、CDN、短信等云产品特惠热卖中

星哥玩云

星哥玩云
星哥玩云
分享互联网知识
用户数
4
文章数
19351
评论数
4
阅读量
7994139
文章搜索
热门文章
星哥带你玩飞牛NAS-6:抖音视频同步工具,视频下载自动下载保存

星哥带你玩飞牛NAS-6:抖音视频同步工具,视频下载自动下载保存

星哥带你玩飞牛 NAS-6:抖音视频同步工具,视频下载自动下载保存 前言 各位玩 NAS 的朋友好,我是星哥!...
星哥带你玩飞牛NAS-3:安装飞牛NAS后的很有必要的操作

星哥带你玩飞牛NAS-3:安装飞牛NAS后的很有必要的操作

星哥带你玩飞牛 NAS-3:安装飞牛 NAS 后的很有必要的操作 前言 如果你已经有了飞牛 NAS 系统,之前...
我把用了20年的360安全卫士卸载了

我把用了20年的360安全卫士卸载了

我把用了 20 年的 360 安全卫士卸载了 是的,正如标题你看到的。 原因 偷摸安装自家的软件 莫名其妙安装...
再见zabbix!轻量级自建服务器监控神器在Linux 的完整部署指南

再见zabbix!轻量级自建服务器监控神器在Linux 的完整部署指南

再见 zabbix!轻量级自建服务器监控神器在 Linux 的完整部署指南 在日常运维中,服务器监控是绕不开的...
飞牛NAS中安装Navidrome音乐文件中文标签乱码问题解决、安装FntermX终端

飞牛NAS中安装Navidrome音乐文件中文标签乱码问题解决、安装FntermX终端

飞牛 NAS 中安装 Navidrome 音乐文件中文标签乱码问题解决、安装 FntermX 终端 问题背景 ...
阿里云CDN
阿里云CDN-提高用户访问的响应速度和成功率
随机文章
星哥带你玩飞牛NAS-6:抖音视频同步工具,视频下载自动下载保存

星哥带你玩飞牛NAS-6:抖音视频同步工具,视频下载自动下载保存

星哥带你玩飞牛 NAS-6:抖音视频同步工具,视频下载自动下载保存 前言 各位玩 NAS 的朋友好,我是星哥!...
开源MoneyPrinterTurbo 利用AI大模型,一键生成高清短视频!

开源MoneyPrinterTurbo 利用AI大模型,一键生成高清短视频!

  开源 MoneyPrinterTurbo 利用 AI 大模型,一键生成高清短视频! 在短视频内容...
150元打造低成本NAS小钢炮,捡一块3865U工控板

150元打造低成本NAS小钢炮,捡一块3865U工控板

150 元打造低成本 NAS 小钢炮,捡一块 3865U 工控板 一块二手的熊猫 B3 工控板 3865U,搭...
多服务器管理神器 Nexterm 横空出世!NAS/Win/Linux 通吃,SSH/VNC/RDP 一站式搞定

多服务器管理神器 Nexterm 横空出世!NAS/Win/Linux 通吃,SSH/VNC/RDP 一站式搞定

多服务器管理神器 Nexterm 横空出世!NAS/Win/Linux 通吃,SSH/VNC/RDP 一站式搞...
星哥带你玩飞牛NAS-11:咪咕视频订阅部署全攻略

星哥带你玩飞牛NAS-11:咪咕视频订阅部署全攻略

星哥带你玩飞牛 NAS-11:咪咕视频订阅部署全攻略 前言 在家庭影音系统里,NAS 不仅是存储中心,更是内容...

免费图片视频管理工具让灵感库告别混乱

一言一句话
-「
手气不错
开源MoneyPrinterTurbo 利用AI大模型,一键生成高清短视频!

开源MoneyPrinterTurbo 利用AI大模型,一键生成高清短视频!

  开源 MoneyPrinterTurbo 利用 AI 大模型,一键生成高清短视频! 在短视频内容...
开发者福利:免费 .frii.site 子域名,一分钟申请即用

开发者福利:免费 .frii.site 子域名,一分钟申请即用

  开发者福利:免费 .frii.site 子域名,一分钟申请即用 前言 在学习 Web 开发、部署...
零成本上线!用 Hugging Face免费服务器+Docker 快速部署HertzBeat 监控平台

零成本上线!用 Hugging Face免费服务器+Docker 快速部署HertzBeat 监控平台

零成本上线!用 Hugging Face 免费服务器 +Docker 快速部署 HertzBeat 监控平台 ...
让微信公众号成为 AI 智能体:从内容沉淀到智能问答的一次升级

让微信公众号成为 AI 智能体:从内容沉淀到智能问答的一次升级

让微信公众号成为 AI 智能体:从内容沉淀到智能问答的一次升级 大家好,我是星哥,之前写了一篇文章 自己手撸一...
国产开源公众号AI知识库 Agent:突破未认证号限制,一键搞定自动回复,重构运营效率

国产开源公众号AI知识库 Agent:突破未认证号限制,一键搞定自动回复,重构运营效率

国产开源公众号 AI 知识库 Agent:突破未认证号限制,一键搞定自动回复,重构运营效率 大家好,我是星哥,...