1,APCu

APCu is APC stripped of opcode caching.

这是apcu的官方文档解释,简单的说APCU是从APC剥离出来的用户数据缓存功能,而去掉了apc的opcode cache。

所以后来:APCu = APC User

APC的主要用途有两项:

  1. 将PHP代码编译之后所产生的bytecode暂存在共享内存内供重复使用,以提升应用的运行效率。(Opcode Cache)
  2. 提供用户数据缓存功能,需要显示的调用,和redis/memcache类似。(User Data Cache)

其中第一点是其主要功能,因为PHP的运行机制——每次接受一个请求时都要初始化所有的资源(将源代码编译成bytecode),执行代码,然后释放资源;但其实代码99%的情况下并不会改变,所以每次请求都编译执行十分的消耗时间。所以启用Opcache Cache后,可以在初始化资源阶段减少CPU和内存的消耗。

但是PHP从PHP 5.5开始,使用ZendOptimizerPlus作为内置的Opcode Cache实现。所以现在APCU的主要功能便不再有意义了,而且其官方也随后表示不再维护APC了。

apcu也提供了缓存常见的一些操作,如:

  • apc_add — 缓存一个变量到数据存储
  • apc_bin_dump — 获取给定文件和变量的二进制文件转储。
  • apc_bin_dumpfile — Output a binary dump of cached files and user variables to a file
  • apc_bin_load — Load a binary dump into the APC file/user cache
  • apc_bin_loadfile — Load a binary dump from a file into the APC file/user cache
  • apc_cache_info — Retrieves cached information from APC's data store
  • apc_cas — 用新值更新旧值
  • apc_clear_cache — 清除APC缓存
  • apc_compile_file — Stores a file in the bytecode cache, bypassing all filters
  • apc_dec — Decrease a stored number
  • apc_define_constants — Defines a set of constants for retrieval and mass-definition
  • apc_delete_file — Deletes files from the opcode cache
  • apc_delete — 从用户缓存中删除某个变量
  • apc_exists — 检查APC中是否存在某个或者某些key
  • apc_fetch — 从缓存中取出存储的变量
  • apc_inc — 递增一个储存的数字
  • apc_load_constants — Loads a set of constants from the cache
  • apc_sma_info — Retrieves APC's Shared Memory Allocation information
  • apc_store — Cache a variable in the data store

但apcu也有一个明显的缺点:这意味着如果您将PHP用作FastCGI进程(例如Nginx和php-fpm),则每个PHP进程都会拥有自己的缓存。在FastCGI模式下重启后将会清除缓存。

2, Opcache  

opcache就是APC剥离出的第一个缓存字节码的功能缓存。

OPCache is a special caching mechanism that stores precompiled versions of the PHP files. When executed, a PHP file is compiled to bytecode and once this process is done, the bytecode is executed.

OPCache是​​一种特殊的缓存机制,用于存储PHP文件的预编译版本。执行后,一个PHP文件被编译为字节码,一旦完成此过程,字节码便被执行。

自PHP 5.5起,它已捆绑在内核中,只需安装它即可使我们获得极大的速度改进,而不必像apcu那样去显式的调用它。

PHP的apcu是什么,opcache又是什么?相关推荐

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

    前言 opcache从字面意思,肯定是缓存这一块的.但是你是否知道它的工作原理是怎样的呢? 这里一点一点让你了解!PHP项目中,尤其是在高并发大流量的场景中,如何提升PHP的响应时间,是一项十分重要的 ...

  2. opcache php 原理_PHP Opcache工作原理

    PHP项目中,尤其是在高并发大流量的场景中,如何提升PHP的响应时间,是一项十分重要的工作. 而Opcache又是优化PHP性能不可缺失的组件,尤其是应用了PHP框架的项目中,作用更是明显. 1. 概 ...

  3. opcache php 原理_PHP Opcache的工作原理

    PHP项目中,尤其是在高并发大流量的场景中,如何提升PHP的响应时间,是一项十分重要的工作. 而Opcache又是优化PHP性能不可缺失的组件,尤其是应用了PHP框架的项目中,作用更是明显. 1. 概 ...

  4. PHP多进程 - opcode缓存与用户缓存(APC, XCache, eAcclerator,Zend Opcache,Yac)

    php是解释性的语言,每次运行都需要重新解释成opcode,这显然很浪费时间,使得php开发的web应用的性能不高.所以就出现了针对opcode的缓存组件,同时,一般的缓存组件又都提供用户数据的缓存( ...

  5. 五分钟没有操作自动退出_这又是什么骚操作??5只蚂蚁战略配售基金拟增设B类份额,自动赎回退出!!...

    他来了,他来了,这又是什么骚操作??昨天,五只创新未来18个月封闭运作混合型证券投资基金发布联合声明,会为这个战略配售基金安排一个月的退出选择期. 5只创新未来18个月封闭运作混合型证券投资基金发布联 ...

  6. 【学术相关】什么是核心期刊?国家级期刊、省级期刊、国际级期刊又是啥?...

    点击上方"小白学视觉",选择加"星标"或"置顶" 重磅干货,第一时间送达 北大核心.南大核心.SSCI.CSSCI.CN.ISSN..... ...

  7. 什么是信度分析(Reliability)?有哪些信度分析方法?那什么又是效度?

    什么是信度分析(Reliability)?有哪些信度分析方法?那什么又是效度? 目录 什么是信度分析(Reliability)?有哪些信度分析方法?那什么又是效度? #常见信度分析方法

  8. 句法分析是什么?成分句法分析、依存句法分析又是什么?他们之间有什么区别?

    句法分析是什么?成分句法分析.依存句法分析又是什么?他们之间有什么区别? 目录

  9. MASK-RCNN是什么?MASK(掩膜)又是什么?

    MASK-RCNN是什么?MASK(掩膜)又是什么? 掩膜,图片中有一个圆形物体,你从一张纸上剪掉一个和该物体一模一样大小的圆,把这张纸蒙在图片上,这时候你只能看见这个圆形物体,这张纸就是mask了. ...

最新文章

  1. 告别深度学习炼丹术!谷歌大脑提出“权重无关”神经网络
  2. MySql数据库查询结果用表格输出PHP代码示例
  3. PostgreSQL JDBC SQLWarning
  4. Touch UI:高质量的移动端UI框架介绍
  5. NYOJ 16 矩形嵌套
  6. 天天象棋 残局闯关 第9关
  7. 聊聊LightProbe原理实现以及对LightProbe数据的修改
  8. 冒泡排序算法(C#)
  9. jenkins source files 和 Remove Prefix 用户
  10. 在线JSON转flow工具
  11. tensorflow之dropout
  12. SQL Server 镜像
  13. 简述igp和egp_IGP 和 EGP 这两类协议的主要区别是什么 - 问答库
  14. 淘宝新上架的产品如何在站内SEO优化
  15. 程序员在上海税前12000的工资,真实发到手能拿到多少?
  16. 旅游行业APP开发方案
  17. 想做自媒体副业,有什么领域可推荐?
  18. C语言中void的错误用法
  19. 金融是不是一群不事生产的人,对社会毫无贡献的人,互相对赌的零和游戏?
  20. 浅谈互联网社交类产品更迭

热门文章

  1. 3个月学习成功上岗软件测试,我一个文科女也能吃IT饭了...
  2. Android Native Crash崩溃及错误原因分析二-实战解决
  3. 简单说说 RPC 框架,你 悟到了吗?
  4. ARouter 源码解析(零) 基本使用
  5. 鸿蒙系统报名选择一个应用,申请鸿蒙系统有一个应用选择怎么选择呢
  6. 城市停车难,如何破局?
  7. 4.如何靠IT逆袭大学?
  8. iPhone 越狱版本打包
  9. 《小狗钱钱》--chapter3.4.5--挖掘需求、排除干扰
  10. LR参数化,参数化类型:Fille类型--2列多个参数