淘先锋技术网

首页 1 2 3 4 5 6 7
php apc配置 在Web开发中,为了加速Web应用程序的访问速度,现在流行使用缓存技术。为了支持缓存技术,PHP中提供了APC扩展,在本文中会针对APC扩展来进行讲解。 APC即Alternative PHP Cache,它可以缓存PHP代码、变量和SQL查询结果等数据。APC的使用可以有效提高Web应用程序的速度,这也是现在很多Web应用程序所使用的缓存技术之一。 在使用APC之前,需要在php.ini文件中引入APC,具体操作如下:
extension=apc.so
引入成功之后,就可以在PHP程序中使用APC了。 APC的使用非常简单,只需要使用如下函数即可:
apc_store($key, $var, $ttl);
其中,$key是缓存数据的键,$var是缓存数据的值,$ttl是缓存过期时间。如果$ttl的值为0,则缓存永不过期。如果$ttl的值为负数,则表示缓存立即过期。 与apc_store函数对应的是apc_fetch函数,它用于获取缓存数据:
apc_fetch($key);
如果缓存值不存在,则返回false。 除了apc_store和apc_fetch函数,还有其他一些APC扩展提供的函数可供使用。 在使用APC扩展时,需要注意一些配置问题。 首先,需要在php.ini文件中配置APC的一些相关参数:
apc.enabled=1
apc.shm_segments=1
apc.shm_size=64M
apc.ttl=7200
apc.user_ttl=7200
apc.num_files_hint=1000
apc.user_entries_hint=10000
apc.max_file_size=1M
apc.stat=1
apc.write_lock=1
apc.report_autofilter=0
apc.include_once_override=0
apc.rfc1867=1
apc.file_update_protection=2
apc.filters=
apc.cache_by_default=1
apc.lazy_classes=0
apc.lazy_functions=0
上述配置参数的含义如下: - apc.enabled:是否开启APC缓存; - apc.shm_segments:APC缓存使用的共享内存段个数; - apc.shm_size:APC缓存使用的共享内存大小; - apc.ttl:APC缓存默认的过期时间; - apc.user_ttl:用户缓存默认的过期时间; - apc.num_files_hint:预估的缓存文件数目,以便自动分配存储空间; - apc.user_entries_hint:预估的用户缓存条目数目,以便自动分配存储空间; - apc.max_file_size:最大缓存文件大小,超过此大小将不会缓存; - apc.stat:是否开启缓存统计功能; - apc.write_lock:是否开启写锁; - apc.report_autofilter:是否过滤掉PHP服务器的某些文件,如ZendOptimizer、xdebug等; - apc.include_once_override:是否开启APC的include_once优化; - apc.rfc1867:是否开启从文件上传表单中解析数据; - apc.file_update_protection:是否开启更新文件的保护,以避免并发更新引起的问题; - apc.filters:过滤掉不需要缓存的文件; - apc.cache_by_default:是否缓存所有文件; - apc.lazy_classes:是否懒加载类文件; - apc.lazy_functions:是否懒加载函数文件。 另外,还可以使用以下两个配置参数来控制APC的缓存策略:
apc.cache_by_default=Off
这个参数会将APC默认的缓存策略关闭,需要手动指定缓存的内容。
apc.filters="+/path/to/include/, -/path/to/exclude/"
这个参数会过滤不需要缓存的文件,加号表示需要缓存的文件,减号表示不需要缓存的文件。 本文只对APC扩展进行了基础的介绍和配置讲解,如果需要深入了解请参考相关文档和配置参数说明。