您的位置:

开启php扩展apc,安装php扩展的几种方法

本文目录一览:

如何利用APC缓冲PHP脚本来提高服务器性能

希望您的Web服务器发挥最大的性能吗?如果您正在使用PHP脚本,您可以很轻松地利用PHP的APC模块实现这一点,它对php opcode进行缓冲,而不是迫使php在每一次执行的时候都重新解释每一个脚本。在一个有PEAR支持的PHP5系统中, APC的安装和它的执行一样简单,在根目录下执行:# pecl install APC 一些分发版本或许会提供APC二进制的程序包,所以您也许可以利用urpmi php-apc或apt-get来安装php-apc。一旦APC被安装之后,编辑/etc/php.ini加入以下内容:extension=apc.so[apc]apc.enabled = 1apc.shm_segments = 1apc.shm_size = 30apc.optimization = 0apc.ttl = 7200apc.user_ttl = 7200apc.num_files_hint = 1000apc.mmap_file_mask = /tmp/apc.XXXXXX 这样做是为了激活APC缓冲,而不是启动优化器(当前处于实验阶段)。除了激活APC之外,应该注意的重要选项还有apc.ttl和apc.user_ttl,它们定义了脚本保持在缓存中的时间,以秒计。这一点对于处理提供很多文件的服务器来说真的很重要;它将防止缓存因被陈旧的条目装满而无法为新的条目提供缓冲的情况出现。您也可以调整apc.num_files_hint,它为APC提供了一个近似值,表示了被请求的或包括在您系统中PHP源文件的数量。其缺省值是1000,但是如果您知道要处理更多文件,可以将值增加到一个最接近的估计值。同样地,如果文件会少很多的话,也可以相应地减少。最后,在APC源程序包中,有一个叫apc.php的脚本,它用来从APC缓存中获取详细的数据,使得您能够进一步调整APC的设置。要使用这个脚本的话,您就需要编辑脚本和改变ADMIN_PASSWORD选项。

PHP的扩展模块怎么添加?

php安装好后,可能在初次安装时,会有些模块会有遗漏,但是我们又不想重新编译php,因为耗时是比较长的。我们可不可以在不重新编译安装php的情况下,来为php单独添加某一个模块呢?查找资料,发现还是有方法的,重点就是phpize了,于是写了这篇文章.

下面我们就以单独为php加载mysqli模块为例,演示如何动态为php添加模块。

1、找到php原码安装文件

2、cd /home/php/ext/myslqi

3、运行 /usr/local/php/bin/phpize

4、/configure –with-php-config=/usr/local/php/bin/php-config

5、make make install

6、安装完成之后会在系统/usr/local/php/lib/php/extensions/no-debug-non-zts-20060613/这个目录下面生成mysqli.so的库文件

7、编辑php.ini文件,指定php到哪人目录读取模块

vi /usr/local/php/etc/php.ini

extension_dir=”/usr/local/php/lib/php/extensions/no-debug-non-zts-20060613″

extension=mysqli.so

8、重启php服务 /usr/local/php/sbin/php-fpm restart

7、/usr/local/php/bin/php -m|grep mysqli 查看mysqli.so是否存在

如果步骤正确,你的人口也不差的情况下,应该这样php的动态模块加载就完成了。

PHP软件开发程序拓展的五大方法?

相信大多数程序员都有过对程序进行拓展的一些操作了,但是对于新手工程师来说这还是比较难的一个技术。今天,云南java培训就通过案例分析来了解和学习一下,PHP编程拓展的方法都有哪些。

1.使用PHP的APC特性。APC——AlternativePHPCache,虽然官方称为“可选PHP缓存”,但是称为“另一个PHP缓存也不为过”,因为它可以切实的提升网站的性能。

2.把所有不是.php的请求都分配给CDN(内容分发网络),不要使用你的服务器处理静态文件。他们使用S3来存储所有,并使用CloudFront作为他们的CDN。近CloudFront出现的一些问题迫使他们不得不直接使用S3服务。

3.切勿将PHP代码里的链接指向其它的服务器。比如数据库以及memcache服务器,除非是强制性的或者是没有其它方法实现你的目的。在执行流中让链接指向其它服务器是非常没有效率的:可能会使服务器受到限制,从而降低处理的速度。使用APC键/值存储来储存数据,并使用Barnish来缓存整个页面。

4.使用Varnish。一般情况下,站点上的所有网页都不会改变或者是不会做大型的改动。Varnish就对于网络服务器缓存有着Memcache/ModRewrite的作用。同样在压力测试中,使用前后的性能差异很大。

5.使用更大的服务器实例,比如c1.xlarge有8个核心可以应对负载,而m1.medium只有一个核心可以处理请求。

可以使用GoogleAnalytics来分析每个用户在每个页面上花费的时间。收集这些信息,使用Siege来运行压力测试,从而不断的熟悉自己业务的负载类型,以便更好的提升程序的扩展性。