Win下如何安装PHP的APC拓展
2015-01-24信息快讯网
这篇教程我们会告诉大家如何在windows上安装APC。我已经在windows server 2003上成功测试。当然,在你也可以使用windows xp做为测试服务器
APC简介APC(Alternative PHP Cache)是一个PHP缓存。它在内存中存储PHP页面并且减少了硬盘的I/O。这对于性能的提升十分明显。你甚至可以在CPU使用率下降50%的情况下提升系统50%的性能。
windows下安装PHP的APC拓展
注意:你不能在一天服务器上同时安装APC和Zend Optimiser,二者只能选其一。
按照下面的方法安装PHP的APC拓展。
下载正确的版本
我是用的PHP版本是5.3.10
注意:确定你所下载的APC拓展版本对应了你的PHP版本。
设置php.ini
编辑php.ini文件,向其中的拓展区域部分添加如下代码
extension = php_apc.dll
重启服务器,使用phpinfo查看是否成功安装
phpinfo();
phpinfo查看apc拓展是否安装成功
查看可用的内存
创建一个php文件apcmeminfo.php
print_r(apc_sma_info());
//由缓存使用的内存数量使用这个公式来计算:
total_memory = apc.shm_segments * apc.shm_size
在这个例子中,可用的内存大约32 Mb。通常,如果我们需要在我们的缓存中超过32 Mb,我们应该增加APC使用的分段数量。然而,这可以导致web服务器错误,因此最好是增加片断的大小。我们应该逐步为缓存增加可用的总量,以避免内存的流失。
默认的APC如下:
apc.cache_by_default = On apc.enable_cli = Off apc.enabled = On apc.file_update_protection = 2 apc.filters = apc.gc_ttl = 3600 apc.include_once_override = Off apc.max_file_size = 1M apc.num_files_hint = 1000 apc.optimization = Off apc.report_autofilter = Off apc.shm_segments = 1 apc.shm_size = 30 apc.slam_defense = 0 apc.stat = On apc.ttl = 0 apc.user_entries_hint = 100 apc.user_ttl = 0 apc.write_lock = On
关于APC完整的参数设置的解释,请查阅:http://www.php.net/apc。
下面是一个php.ini中的一个APC块。请将它们粘贴进你的php.ini文件中:
apc.enabled = 1 apc.shm_segments = 1 apc.shm_size = 64 apc.max_file_size = 10M apc.stat=1
剩余其它的设置将会使用默认值。
设置临时目录
APC需要一个临时目录来存储文件。它会尝试在windows的临时目录缓存文件,事先请给临时目录写的权限。
监控和调优缓存
监控和调优apc缓存
APC源包含一个php脚本,该脚本对于监控和调优性能的缓存是很有用的。
1, 下载APC监控文件:http://pecl.php.net/package/apc
2, 压缩包中的apc.php文件显示APC监控信息。
3, 运行这个文件,你会看到一个图形显示你的缓存一些统计数据。
4, 调优缓存,查看General Cache Information and Detailed Memory Usage and Fragmentation sections(总体缓存信息和详细的内存使用以及碎片部分)。
5, 监视Cache Full Count和碎片百分比,如果Cache Full Count大于0,表示缓存已满并且频繁读写,因为没有足够的内存被分配。增加apc.shm_size可解决问题。
6, 碎片百分比应该是0%,但是随着内存频繁的读写,其值会上涨。
apc.php的安全
注意apc.php的安全,应该使用安全认证的方式来控制apc.php的信息输出,比如:
// Moodle user Authentication require_once("../config.php"); require_once($CFG--->libdir.'/adminlib.php'); require_login(); require_capability('moodle/site:config', get_context_instance(CONTEXT_SYSTEM, SITEID)); // Disable APC Auth(APC 的安全认证) defaults('USE_AUTHENTICATION',0); //....
php除数取整示例
在PHP模板引擎smarty生成随机数的方法和math函数详解
PHP模板引擎Smarty的缓存使用总结
php smarty模板引擎的6个小技巧
PHP中使用smarty生成静态文件的例子
Windows下的PHP安装文件线程安全和非线程安全的区别
PHP函数addslashes和mysql_real_escape_string的区别
phpmyadmin打开很慢的解决方法
PHP5.5在windows安装使用memcached服务端的方法
用PHP和Shell写Hadoop的MapReduce程序
thinkphp实现数组分页示例
不使用php api函数实现数组的交换排序示例
免费手机号码归属地API查询接口和PHP使用实例分享
CodeIgniter框架中_remap()使用方法2例
PHP APC缓存配置、使用详解
PHP获取php,mysql,apche的版本信息示例代码
PHP之APC缓存详细介绍 apc模块安装
php中apc缓存使用示例
mcrypt启用 加密以及解密过程详细解析
如何使用“PHP” 彩蛋进行敏感信息获取
浅析虚拟主机服务器php fsockopen函数被禁用的解决办法
浅析php fwrite写入txt文件的时候用 \r\n不能换行的问题
一个漂亮的php验证码类(分享)
如何在php中正确的使用json
请离开include_once和require_once
实测在class的function中include的文件中非php的global全局环境
Php output buffering缓存及程序缓存深入解析
thinkphp 一个页面使用2次分页的实现方法
深入Nginx + PHP 缓存详解
如何修改和添加Apache的默认站点目录
Apache实现Web Server负载均衡详解(不考虑Session版)
如何在Ubuntu下启动Apache的Rewrite功能
IIS安装Apache伪静态插件的具体操作图文
浅析Apache中RewriteCond规则参数的详细介绍
PHP APC的安装与使用详解
深入解析php之apc
使用php+apc实现上传进度条且在IE7下不显示的问题解决方法