最近在学习和使用php的缓存,谁能给我讲解一下apc的工作原理。
我现在在php上也加上了apc扩展,而且也配置好了,我怎么才能判断apc模块有起作用呢?
apc.php也放上了,能看到那些页面缓存了,但是我怎么在时间上来考量
而且有人说,页面修改了,如果没有到相应的过期时间 页面还是之前的内容,但是在我这里表现的是,只要页面内容有修改,调用页面的话立即就能显示出来。
请高手帮忙解答一下

解决方案 »

  1.   

    APC默认是每次检查文件的修改时间,如果有变动,则重新编译。
    参数说明: http://www.php.net/manual/zh/apc.configuration.php#ini.apc.stat
    对于你说的如何判断是否开启APC,可以在phpinfo()的 APC enable项看到On或者Off
      

  2.   

    http://blog.csdn.net/mengxiangbaidu/article/details/6942232
    用phpinfo看
      

  3.   

    我想知道,是不是参数配置正确了,apc就会默默的工作了呢?
      

  4.   

    启用APC的时候,用apache ab测某个页面。然后关闭APC后再测一下就可以看到差距了。
    我在linux下的参数就是 ab -n 10000 http://localhost/index.php 。windows我不知道,你搜一下用法介绍很多。或者你自己靠刷新浏览器,输出一下程序开始和结束时间差,内存占用memory_get_usage()等。
    我把我的数据说一下吧
      php-5.2.17 fastcgi  + php-fpm   使用CodeIgniter框架写的一个小页面
      开启APC 内存占用 0.13MB 耗时约 0.0014 秒
      关闭APC 内存占用 0.46MB 耗时月 0.0055 秒
      

  5.   

    APC 擅长于 类似memcached 数据存储吗?
      

  6.   

    apc opcode缓存还行,拿来当memcached用就过分了,本来是跑页面的服务器,开了APC内存都让它给占没了,还让apache和php如何跑高潮呢。 
    再就是memcached是分布式缓存,也就是可以部署成集群,APC虽然实现上是磁盘映射内存池实现的缓存,但尼玛也最多16G的服务器。