您好,欢迎访问一九零五行业门户网

linux下yum安装PHP APC与使用实例_PHP教程

今天要做一个大文件上传进度效果,后来网上说有php apc可以实现,后来百度了一下php apc信息,php apc提供两种缓存功能,即缓存opcode(目标文件),我们称之为apc_compiler_cache。同时它还提供一些接口用于php开发人员将用户数据驻留在内存中,我们称之为apc_user_cache
想用一下apc缓存到底效果如何,无奈在windows找不到相应版本的php-apc.dll扩展文件,只好在linux
下安装了,不用源码方式安装,直接yum就行了:
首先要安装apc的依赖包:
 代码如下 复制代码
yum install php-pear php-devel httpd-devel pcre-devel gcc make
然后使用pecl安装apc:
 代码如下 复制代码
pecl install apc
添加apc扩展到配置文件:
 代码如下 复制代码
echo extension=apc.so > /etc/php.d/apc.ini
最后记得重启服务器:
 代码如下 复制代码
service httpd restart
,然后用php的phpinfo()函数可以检测到:
apc缓存函数实例
在apc中我们也可以享受apc带来的缓存大文件上传进度的特性,需要在php.ini中将apc.rfc1867设为1,
并且在表单中加一个隐藏域 apc_upload_progress,这个域的值可以随机生成一个hash,以确保唯一。
apc有很多设置,你可以在php.ini中对它设置,如:
 代码如下 复制代码
[apc]
apc.enabled = 1
apc.shm_segments = 1
apc.shm_size = 64
apc.max_file_size = 10m
apc.stat=1
我试用了下php中常见的apc函数:
 代码如下 复制代码
get_cache('key'));
总结
1,使用spinlocks锁机制,能够达到最佳性能。
2,apc提供了apc.php,用于监控与管理apc缓存。不要忘记修改管理员名和密码
3,apc默认通过mmap匿名映射创建共享内存,缓存对象都存放在这块”大型”的内存空间。由apc自行管
理该共享内存
4,我们需要通过统计调整apc.shm_size、apc.num_files_hints、apc.user_entries_hint的值。直到最

5,好吧,我承认apc.stat = 0 可以获得更佳的性能。要我做什么都可以接受.
6,php预定义常量,可以使用apc_define_constants()函数。不过据apc开发者介绍说pecl hidef性能更
佳,抛异define吧,它是低效的。
7,函数apc_store(),对于系统设置等php变量,生命周期是整个应用(从httpd守护进程直到httpd守护进
程关闭),使用apc比memcached会更好。必竟不要经过网络传输协议tcp。
8,apc不适于通过函数apc_store()缓存频繁变更的用户数据,会出现一些奇异现象。
http://www.bkjia.com/phpjc/629903.htmlwww.bkjia.comtruehttp://www.bkjia.com/phpjc/629903.htmltecharticle今天要做一个大文件上传进度效果,后来网上说有php apc可以实现,后来百度了一下php apc信息,php apc提供两种缓存功能,即缓存opcode(目标文...
其它类似信息

推荐信息