PHP APC的安装与高级使用
PHP APC一般是下载源代码然后phpize来编译安装,它从安装后就开始在后台为您的PHP 应用服务了。在接下来的文章中就为大家介绍了具体的使用方法。
AD: 51CTO云计算架构师峰会 抢票进行中!
PHP语言是一个功能强大的嵌入式
HTML脚本语言,很多程序员都在使用这一语言来进 行网站的创建。PHP APC,全称是Alternative PHP Cache,官方翻译叫”可选PHP缓存”,但 我个人觉得应该叫”另一个PHP缓存”。
? ? ? ? ?
深入探讨PHP表单的实现方法 推荐几款功能强大的PHP编辑器 深入剖析PHP变量的具体使用方法 PHP类Snoopy的特点分析 详细解读PHP $_FILES数组的内容
因为这个东西如果叫”可选PHP缓存”,容易给人一种可要可不要的,不怎么有用的错觉。 APC的主页是:pecl.php.net /package/apc.目前的版本是3.0.14,通过PECL 安装,需要php4.3.0或更高版本. PHP APC的安装: 一般是下载
源代码然后phpize来编译安装,安装完以后在加上php.ini里加上 extension=apc.so 这么一行就行了. PHP APC的使用: APC的使用其实倒说不上.APC是个优化器,自安装之日起,就默默地在后台为您的PHP应用服 务了.您的所有PHP代码会被缓存起来. 另外,APC可提供一定的内存缓存功能.但是这个功 能并不是十分完美,有报告说如果频繁使用APC缓存的写入功能,会导致不可预料的错误.如 果想使用这个功能,可以看看apc_fetch,apc_store等几个与apc缓存相关的函数. 从 PHP5.2开始,APC引入了一个小甜饼,解决了困扰大家已久的大文件上传的进度条问题. PHP APC的高级使用
1.缓存期限: APC的缓存分两部分:系统缓存和用户数据缓存.
系统缓存 是自动使用的,是指APC把PHP文件源码的编译结果缓存起来,然后在再次调用时 先对比时间标记。 如果未过期,则使用缓存代码运行。 默认缓存 3600s(一小时).但是这样仍 会浪费大量CPU时间.因此可以在php.ini中设置system缓存为永不过期(apc.ttl=0).不过 如果这样设置,改运php代码后需要restart一下您的web服务器(比如apache?).目前对 APC的性能测试一般指的是这一层cache; 用户数据缓存 由用户在编写php代码时用apc_store和apc_fetch函数操作读取、写 入的.如果量不大的话我建议可以使用一下.如果量大,我建议使用memcache会更好. 如果 要享受APC带来的缓存大文件上传进度的特性,需要在php.ini中将apc.rfc1867设为1,并 且在表单中加一个隐藏域APC_UPLOAD_PROGRESS,这个域的值可以随机生成一个hash,以确 何唯一.具体例子请参见前面给出的链接. 2.状态控制和分析: PHP APC的源码包自带了一个apc.php;您可以将这个文件上传到
web服务器的某个目录下,用浏览器访问,这会显示当前的状态.我们可以从这里的表格分析 当前的缓存状况,作出进一步优化. apc-info-clublocalhost2.png 这是某test站点的状态. 您可以慢慢分析,这个工具会提供很多有用的工具.比如您可以看到哪些文件经常被包含(访 问),您缓存的哪个变量经常被读取,或经常被更新等. 最后顺便提一句,有独立
报告说,PHP APC的代码缓存、 优化效果要高出zend优化器.就算不是真的,他开源而又
免费,实在是一个 相当不错的选择
Nginx + PHP-FPM + APC=绝妙的组合(1)
本文将介绍目前让PHP最快的方法:Nginx +
PHP-FPM + APC,看似有些复杂,实际上我们 只需要几个步骤就可以完成,并且性能远超Apache,有兴趣的朋友不妨去试一试。
AD:51CTO云计算架构师峰会 抢票进行中!
【51CTO独家特稿】本文所介绍的方法应该是目前让PHP最快的办法:Nginx + PHP-FPM + APC。我们将从安装Nginx http服务器、PHP和PHP-FPM补丁,以及APC,详细的讲解这 种方法的具体配置及应用,最终的效果如何?相信会让你大吃一惊。 相关文章推荐:Nginx http服务相关的配置文件 Nginx+PHP配置相关进程的简要介绍 背景
过去两年多来,我们的网站一直运行Apache+mod_php模块,大多数时候这个组合应付 得过来,但随着流量的增加,我们注意到Apache已经显得很吃力了,它开始疯狂地吃内存, CPU也被全部抢占去了,我们需要找到一个更快的方法来解决
问题。 Nginx是一个不错的选择,很多指标都超过了Apache,如I/O、CPU、内存和请求数/秒 等, 如果需要, 随时可以从Google搜索相关信息。 从我个人的测试结果来看, Nginx和Apache 之间的差异是很明显的,不好意思,因为是非正式测试,因此相关数字我就不公布了,这也 不是本文的重点。让我更自信的是,我只需要几个步骤就可以让性能远超Apache。 PHP-FPM? 很多人配置Nginx时可能都会选择来自LightTPD项目的spawn-fcgi解析PHP,但使用 spawn-fcgi有些问题,因此我打算放弃它另觅别的办法。PHP-FPM是PHP FastCGI Process Manager的缩写, 即PHP FastCGI进程管理器, 实际上它是PHP的一个补丁, 旨在将FastCGI 进程管理整合进PHP包中。 注意:即使你坚持使用Apache,也有很多原因跳过mod_php,直接通过FastCGI解析 PHP。使用mod_php时,Apache处理载入PHP的每个请求会载入所有的库,这是一个巨大的 无畏开销。如果使用FastCGI,PHP的行为更象应用
程序服务器,PHP-FPM以