Win下如何安装PHP的APC拓展


Posted in PHP onAugust 07, 2013

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();
Win下如何安装PHP的APC拓展
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的临时目录缓存文件,事先请给临时目录写的权限。
监控和调优缓存

Win下如何安装PHP的APC拓展

监控和调优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入门速成(2)
Oct 09 PHP
实现 win2003 下 mysql 数据库每天自动备份
Dec 06 PHP
解析PHP中常见的mongodb查询操作
Jun 20 PHP
利用PHP实现短域名互转
Jul 05 PHP
探寻PHP脚本不报错的原因
Jun 12 PHP
CodeIgniter框架过滤HTML危险代码
Jun 12 PHP
php常用的安全过滤函数集锦
Oct 09 PHP
整理php防注入和XSS攻击通用过滤
Sep 13 PHP
基于ThinkPHP+uploadify+upload+PHPExcel 无刷新导入数据
Sep 23 PHP
实现WordPress主题侧边栏切换功能的PHP脚本详解
Dec 14 PHP
PHP的Laravel框架中使用消息队列queue及异步队列的方法
Mar 21 PHP
基于PHP实现短信验证码接口(容联运通讯)
Sep 06 PHP
如何使用“PHP” 彩蛋进行敏感信息获取
Aug 07 #PHP
浅析虚拟主机服务器php fsockopen函数被禁用的解决办法
Aug 07 #PHP
浅析php fwrite写入txt文件的时候用 \r\n不能换行的问题
Aug 06 #PHP
一个漂亮的php验证码类(分享)
Aug 06 #PHP
如何在php中正确的使用json
Aug 06 #PHP
PHP 线程安全与非线程安全版本的区别深入解析
Aug 06 #PHP
浅析php中三个等号(===)和两个等号(==)的区别
Aug 06 #PHP
You might like
一个php作的文本留言本的例子(三)
2006/10/09 PHP
解析php中eclipse 用空格替换 tab键
2013/06/24 PHP
PHP 面向对象程序设计(oop)学习笔记(三) - 单例模式和工厂模式
2014/06/12 PHP
PHP面向对象程序设计之命名空间与自动加载类详解
2016/12/02 PHP
Ubuntu 16.04中Laravel5.4升级到5.6的步骤
2018/12/07 PHP
jquery 获取dom固定元素 添加样式的简单实例
2014/02/04 Javascript
js定时器(执行一次、重复执行)
2014/03/07 Javascript
javascript常用的方法分享
2015/07/01 Javascript
基于jquery实现表格无刷新分页
2016/01/07 Javascript
AngularJS实现标签页的两种方式
2016/09/05 Javascript
AngularJS  双向数据绑定详解简单实例
2016/10/20 Javascript
利用浮层使select不可选的实现方法
2016/12/03 Javascript
jquery中$.fn和图片滚动效果实现的必备知识总结
2017/04/21 jQuery
jQuery实现可编辑表格并生成json结果(实例代码)
2017/07/19 jQuery
使用js获取伪元素的content实例
2017/10/24 Javascript
JS使用tofixed与round处理数据四舍五入的区别
2017/10/25 Javascript
p5.js入门教程之键盘交互
2018/03/19 Javascript
JavaScript 日期时间选择器一些小结
2018/04/02 Javascript
详解Angular5/Angular6项目如何添加热更新(HMR)功能
2018/10/10 Javascript
Nodejs 识别图片类型的方法
2019/08/15 NodeJs
[01:04:08]完美世界DOTA2联赛PWL S3 INK ICE vs GXR 第一场 12.16
2020/12/18 DOTA
python 随机数生成的代码的详细分析
2011/05/15 Python
python多线程socket编程之多客户端接入
2017/09/12 Python
Python实现一个Git日志统计分析的小工具
2017/12/14 Python
python通过伪装头部数据抵抗反爬虫的实例
2018/05/07 Python
详解Python 解压缩文件
2019/04/09 Python
使用Python实现牛顿法求极值
2020/02/10 Python
在css3中background-clip属性与background-origin属性的用法介绍
2012/11/13 HTML / CSS
使用简单的CSS3属性实现炫酷读者墙效果
2014/01/08 HTML / CSS
TIME时代杂志台湾总代理:台时亚洲
2018/10/22 全球购物
巴西葡萄酒商店:Divvino
2020/02/22 全球购物
工程师求职简历的自我评价分享
2013/10/10 职场文书
配件采购员岗位职责
2013/12/03 职场文书
初中新生军训方案
2014/05/13 职场文书
廉洁自律演讲稿
2014/05/22 职场文书
四风问题专项整治工作情况报告
2014/10/28 职场文书