VB.net 2010 视频教程 VB.net 2010 视频教程 python基础视频教程
SQL Server 2008 视频教程 c#入门经典教程 Visual Basic从门到精通视频教程
当前位置:
首页 > PHP >
  • PHP APC缓存安装配置教程

PHP APC提供两种缓存功能,即缓存Opcode(目标文件),我们称之为apc_compiler_cache,同时它还提供一些接口用于PHP开发人员将用户数据驻留在内存中,我们称之为apc_user_cache,下面我们来看看PHP APC缓存安装配置.

最简单的方法,找到php安装目录的pecl

自动安装

# /usr/local/php/bin/pecl install apc

接下来按提示一步步完成即可

然后配置 /usr/local/php/etc/php.ini 末尾加入

extension=apc.so

手动安装

官网:http://cn2.php.net/manual/zh/book.apc.php

下载:http://pecl.php.net/package/APC 找最新的

下载apc

  1. # wget http://pecl.php.net/get/APC-3.1.13.tgz 
  2. # tar -zxvf APC-3.1.13.tgz 
  3. # cd APC-3.1.13 

生成configure文件

# /usr/local/php/bin/phpize

执行configure 并且 make && make install

  1. # ./configure --enable-apc --enable-apc-mmap --with-php-config=/usr/local/php/bin/php-config 
  2. # make 
  3. # make install 

拷贝添加SO文件

  1. # cp /usr/local/php/lib/php/extensions/no-debug-non-zts-20100525/apc.so /usr/local/php/lib/php/extensions/apc.so 
  2. chmod 755 /usr/local/php/lib/php/extensions/apc.so 

修改php.ini使之启动APC模块

  1. # vi /usr/local/php/etc/php.ini 
  2. extension_dir = "/usr/local/php/lib/php/extensions" 
  3. extension=apc.so //开源软件:phpfensi.com 
  4. apc.enabled = 1 
  5. ; apc.cache_by_default = on 
  6. ; apc.shm_segments = 1 
  7. ; apc.shm_size = 128 
  8. ; apc.ttl = 7200 
  9. ; apc.user_ttl = 7200 
  10. ; apc.num_files_hint = 1024 
  11. ; apc.write_lock = On 
  12. ; apc.gc_ttl=3600 
  13. ; apc.ttl=0 
  14. ; apc.mmap_file_mask=/tmp/apc.XXXXXX 

重启apache

# service httpd restart

使用APC test.php

  1. <?php 
  2. print_r(apc_cache_info()); 
  3. 注意 在浏览器看会不是很友好,可以查看网页源代码就看到很清晰 
  4. Array 
  5.     [num_slots] => 1031 
  6.     [ttl] => 0 
  7.     [num_hits] => 3 
  8.     [num_misses] => 1 
  9.     [num_inserts] => 1 
  10.     [expunges] => 0 
  11.     [start_time] => 1398341530 
  12.     [mem_size] => 4240 
  13.     [num_entries] => 1 
  14.     [file_upload_progress] => 1 
  15.     [memory_type] => mmap 
  16.     [locking_type] => pthread mutex Locks 
  17.     [cache_list] => Array 
  18.         ( 
  19.             [0] => Array 
  20.                 ( 
  21.                     [type] => file 
  22.                     [device] => 64768 
  23.                     [inode] => 1179758 
  24.                     [filename] => /data/www/www.111cn.net /test.php 
  25.                     [num_hits] => 3 
  26.                     [mtime] => 1398341609 
  27.                     [creation_time] => 1398341617 
  28.                     [deletion_time] => 0 
  29.                     [access_time] => 1398341630 
  30.                     [ref_count] => 1 
  31.                     [mem_size] => 4240 
  32.                 ) 
  33.  
  34.         ) 
  35.  
  36.     [deleted_list] => Array 
  37.         ( 
  38.         ) 
  39.  
  40.     [slot_distribution] => Array 
  41.         ( 
  42.             [109] => 1 
  43.         ) 
  44.  

多次点击,可以发现 num_hits 在变化,说明缓存命中了!

压力测试看效果,关闭开启apc分别压力测试对比一下你会发现开启apc之后吞吐率会比没开启apc要提高许多.

# ab -n1000 -c10 http://www.phpfensi.com/test.php

出处:http://www.phpfensi.com/php/20150415/9299.html

 


相关教程