您的位置:首页 > 编程语言 > PHP开发

PHP APC安装与使用

2011-12-02 15:58 295 查看
最简单的方法,找到php安装目录的pecl
自动安装:
# /usr/local/php/bin/pecl install apc
下面按提示一步步完成即可
配置/etc/php.ini 末尾加入
extension=apc.so

手动安装:
官网 http://cn2.php.net/manual/zh/book.apc.php

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

#wget http://pecl.php.net/get/APC-3.1.9.tgz # tar -zxvf APC-3.1.9.tgz
# cd APC-3.1.9
# /usr/local/php/bin/phpize (生产configure文件)
# ./configure –enable-apc –enable-apc-mmap –with-php-config=/usr/local/php/bin/php-config
# make
# make install
拷贝添加SO文件
# cp /usr/local/lib/php/extensions/no-debug-zts-20060613/apc.so /usr/local/php/lib/php/extensions/apc.so
# chmod 755 /usr/local/php/lib/php/extensions/apc.so
修改PHP.INI使之启动APC模块
修改 php.ini下
extension_dir = “./”
extension_dir = “/usr/local/php/lib/php/extensions”
配置/etc/php.ini 末尾加入
extension=apc.so
apc.enabled = 1
apc.cache_by_default = on
apc.shm_segments = 1
apc.shm_size = 128
apc.ttl = 7200
apc.user_ttl = 7200
apc.num_files_hint = 1024
apc.write_lock = On
apc.gc_ttl=3600
apc.ttl=0
apc.mmap_file_mask=/tmp/apc.XXXXXX
重启apache

#/usr/local/apache2/bin/apachectl restart

使用APC
<?php
print_r(apc_cache_info());
?>

注意 在浏览器看会不是很友好,可以查看网页源代码就看到很清晰
Array
(
    [num_slots] => 1031
    [ttl] => 0
    [num_hits] => 4
    [num_misses] => 1
    [num_inserts] => 1
    [expunges] => 0
    [start_time] => 1322818377
    [mem_size] => 4240
    [num_entries] => 1
    [file_upload_progress] => 1
    [memory_type] => mmap
    [locking_type] => spin Locks
    [cache_list] => Array
        (
            [0] => Array
                (
                    [type] => file
                    [device] => 2049
                    [inode] => 883230
                    [filename] => /var/www/tb.php
                    [num_hits] => 4
                    [mtime] => 1322818340
                    [creation_time] => 1322818379
                    [deletion_time] => 0
                    [access_time] => 1322818482
                    [ref_count] => 1
                    [mem_size] => 4240
                )

        )

    [deleted_list] => Array
        (
        )

    [slot_distribution] => Array
        (


... ...

多次点击,可以发现num_hits在变化,说明缓存命中了!
压力测试看效果:

怎么压力测试看之前的文章 /article/2647597.html
先看看关闭apc功能,在php.ini中配置
# ab -n1000 -c10 http://localhost/tb.php



这个时候吞吐率Requests per second 比没用之前提高许多


==========
另外几款php缓存工具
Xcache
http://xcache.lighttpd.net/

eAccelerator

http://sourceforge.net/projects/eaccelerator/
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: