PHP四大加速缓存器opcache,apc,xcache,eAccelerator与php解析的初步理解

开发者福利!热门AI工具限时免费用 购周边即赠Coding Plan Lite,Claude Code、Cursor等20+工具畅享,效率翻倍! 阅读详情

前言:

这阵在重新整理下知识点,由缓存技术考虑到的php缓存器,下面知道的大概有这个几种:
opcache、APC、xcache、eAccelerator,下面是我个人的理解,这几种加速器的原理是将编译后的源码起来,当下次执行相同代码时,可以省去词法语法分析等步骤,提高php的执行效率

下面是这些加速的配置方式,后续我将继续更新此文章,包含使用这些加速器的不同效果
一、opcache(官方推出的产品还是好用的)

opcache 通过将 PHP 脚本预编译的字节码存储到共享内存中来提升 PHP 的性能, 存储预编译字节码的好处就是 省去了每次加载和解析 PHP 脚本的开销。

PHP 5.5.0 及后续版本中已经绑定了 opcache 扩展。 对于 PHP 5.2,5.3 和 5.4 版本可以使用PECL扩展中的 opcache 库。

  • windows下的php扩展下载地址:
http://windows.php.net/downloads/pecl/releases/
  • 配置如下:
打开php.ini文件,找到[opcache]

; dll地址
extension=php_opcache.dll
; 开关打开
opcache.enable=1
; 开启CLI
opcache.enable_cli=1
; 可用内存, 酌情而定, 单位为:Mb
opcache.memory_consumption=128
; Zend Optimizer + 暂存池中字符串的占内存总量.(单位:MB)
opcache.interned_strings_b
如何正确使用OPcache优化系统性能 专注于PHP、MySQL、Linux前端开发,感兴趣的感谢点个关注哟!!!文章整理在GitHub,主要包含的技术有PHP、Redis、MySQL、JavaScript、HTML&CSS、Linux、Java、Golang、Linux工具资源等相关理论知识、面试题实战内容。 文章说明 一直知道opcache可以提高PHP性能,但没有具体的关注,更多的利用其他的组件来提升系统的性能。一次无意开启了opcache之后,并随意设置了一些配置。结果导致后面在使用一个项目时,发现项目总是不会读取到最新. 阅读详情

相关推荐

PHPapcu是什么,opcache又是什么?

# APCu APCu isAPCstripped of opcode caching. 这是apcu的官方文档解释,简单的说APCU是从APC剥离出来的用户数据缓存功能,而去掉了apc的opcode cache。 所以后来:APCu = APC User APC的主要用途有两项: 将PHP代码编译之后所产生的bytecode暂存在共享内存内供重复使用,以提升应用的运行效率。(Opcode Cache) 提供用户数据缓存功能,需要显示的调用,redis/memcache类似。(Us...

程序员面试精选【codeoffer】 4913

【五分钟读懂】PHP中的opcache是什么,opcache是用来干嘛的?

前言 opcache从字面意思,肯定是缓存这一块的。但是你是否知道它的工作原理是怎样的呢? 这里一点一点让你了解!PHP项目中,尤其是在高并发大流量的场景中,如何提升PHP的响应时间,是一项十分重要的工作。而Opcache又是优化PHP性能不可缺失的组件,尤其是应用了PHP框架的项目中,作用更是明显。 一、概述 在理解 OPCache 功能之前,我们有必要先理解PHP-FPM + Nginx 的工作机制,以及PHP脚本解释执行的机制。 1、PHP-FPM + Nginx 的工作机制

TCMvines的博客 8512

别再只画GO图了!用R语言+Perl脚本搞定单细胞KEGG富集分析圈图(附完整代码)

本文详细介绍了如何利用R语言Perl脚本实现单细胞KEGG富集分析全流程,从基因ID转换到专业圈图可视化。通过对比KEGGGO分析的互补价值,提供完整的代码实现优化技巧,帮助研究者高效完成单细胞测序数据的通路分析,并生成高质量的圈图展示结果。

weixin_28694169的博客 389

什么是OPcache?它对性能有什么影响?

OPcache(Opcode Cache)是 PHP 的一个内置扩展,用于缓存 PHP 脚本的解释代码(opcode),从而提高 PHP 应用程序的性能。OPcache 是一个非常有益的 PHP 扩展,适用于提高 PHP 应用程序的性能响应速度,特别是在高流量、大规模应用中。将编译后的 opcode 存储在内存中,避免重复的解释编译过程,从而加快 PHP 脚本的执行速度。由于脚本的 opcode 被缓存,相同的脚本只需在内存中存储一份,减少了内存消耗。

周祥平程序专栏 2040

phpopcache

一、opcache的原理 1、Opcache是什么? Opcache是一种通过将解析PHP脚本预编译的字节码(Operate Code)存放在共享内存中来避免每次加载解析PHP脚本的开销,解析器可以直接从共享内存读取已经缓存的字节码(Operate Code),从而大大提高PHP的执行效率。 2、什么是Operate Code? 当解释器完成对脚本代码的分析后,便将它们生成可以直接运行的中间代码,也称为操作码(Operate Code,opcode)。Opcode cache的目地是避免重复编译,减少C

懵懂听风雨 3371

PHP加速缓存扩展的区别作用详解(eAccelerator、memcached、xcacheAPC )

PHP中有eAccelerator、memcached、xcacheAPC 4个加速缓存扩展,下面给大家介绍下其区别,一起看看吧!   折腾VPS的朋友,在安装好LNMP等Web运行环境后都会选择一些缓存扩展安装以提高PHP运行速度,常被人介绍的有 eAccelerator、memcached、xcache、Alternative PHP Cache这几个缓存扩展,它们之间有什么区别?分

BlueSky 849

认识缓存之Opcode缓存

一、php加速器介绍     一个php程序在运行完成后,内存马上释放,基本上所有数据都在此时销毁(仅有极少数据会缓存),也就是说此时计算机内存中基本上不存在这个php代码中的数据,这常驻内存的java等语言有显著区别。这种缓存机制具有如下的优缺点:     优点:有效避免内存泄露,内存回收机制更简单,避免因为一个程序的问题而连累整个服务器。     缺点:无法复用已有数据,每个p...

crazzy_lp的博客 306

php 查询缓存原理,深入理解PHP Opcode缓存原理

什么是opcode缓存?当解释器完成对脚本代码的分析后,便将它们生成可以直接运行的中间代码,也称为操作码(Operate Code,opcode)。Opcodecache的目地是避免重复编译,减少CPU内存开销。如果动态内容的性能瓶颈不在于CPU内存,而在于I/O操作,比如数据库查询带来的磁盘I/O开销,那么opcode cache的性能提升是非常有限的。但是既然opcode cache能带来...

weixin_42500720的博客 286

opcode php 缓存,深入理解PHP Opcode缓存原理

什么是opcode缓存?当解释器完成对脚本代码的分析后,便将它们生成可以直接运行的中间代码,也称为操作码(Operate Code,opcode)。Opcode cache的目地是避免重复编译,减少CPU内存开销。如果动态内容的性能瓶颈不在于CPU内存,而在于I/O操作,比如数据库查询带来的磁盘I/O开销,那么opcode cache的性能提升是非常有限的。但是既然opcode cache能带...

weixin_42500369的博客 274

深入理解PHP Opcode缓存原理

什么是opcode缓存? 当解释器完成对脚本代码的分析后,便将它们生成可以直接运行的中间代码,也称为操作码(Operate Code,opcode)。Opcode cache的目地是避免重复编译,减少CPU内存开销。如果动态内容的性能瓶颈不在于CPU内存,而在于I/O操作,比如数据库查询带来的磁盘I/O开销,那么opcode cache的性能提升是非常有限的。但是既然opcode cac

怕什么真理无穷 646

php 304缓存原理,深入理解PHP Opcode缓存原理

什么是opcode缓存?当解释器完成对脚本代码的分析后,便将它们生成可以直接运行的中间代码,也称为操作码(Operate Code,opcode)。Opcode cache的目地是避免重复编译,减少CPU内存开销。如果动态内容的性能瓶颈不在于CPU内存,而在于I/O操作,比如数据库查询带来的磁盘I/O开销,那么opcode cache的性能提升是非常有限的。但是既然opcode cache能带...

weixin_32887779的博客 200

PHP-深入理解Opcode

1.什么是opcode缓存?   当解释器完成对脚本代码的分析后,便将它们生成可以直接运行的中间代码,也称为操作码(Operate Code,opcode)。Opcode cache的目地是避免重复编译,减少CPU内存开销。如果动态内容的性能瓶颈不在于CPU内存,而在于I/O操作,比如数据库查询带来的磁盘I/O开销,那么opcode cache的性能提升是非常有限的。但是既然opcode ca...

程序猿的世界 2438

PHP-深入理解Opcode缓存

1.什么是opcode缓存?  当解释器完成对脚本代码的分析后,便将它们生成可以直接运行的中间代码,也称为操作码(Operate Code,opcode)。Opcode cache的目地是避免重复编译,减少CPU内存开销。如果动态内容的性能瓶颈不在于CPU内存,而在于I/O操作,比如数据库查询带来的磁盘I/O开销,那么opcode cache的性能提升是非常有限的。但是既然opcode cac...

weixin_34067102的博客 321
上一篇: mysql索引优化的前篇(一)
下一篇: 作为一个后端工程师需要懂得运维基础之Crontab的使用
Alan_Weng
博客等级 码龄11年 26粉丝 47原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值