适当的优化一方面可以提高网站源码执行效率,另一方面也可以减轻服务器压力,一举两得的事情。赵容部落这边也分享了一些在DirectAdmin(*下简称DA)安装组件来优化环境的教程,今天,我们再来分享在DA安装memcache组件的教程。
什么是memcache?
Memcache是一个高性能的分布式的内存对象缓存系统,通过在内存里维护一个统一的巨大的hash表,它能够用来存储各种格式的数据,包括图像、视频、文件以及数据库检索的结果等。简单的说就是将数据调用到内存中,然后从内存中读取,从而大大提高读取速度。
Memcache是danga的一个项目,最早是LiveJournal服务的,最初为了加速LiveJournal访问速度而开发的,后来被很多大型的网站采用。
Memcached是以守护程序方式运行于一个或多个服务器中,随时会接收客户端的连接和操作。
上面这些都是抽象的,我喜欢简单的。因为有好处,所以安装,比如你想给wordpress启用object-cache缓存,就必须memcache支持,你不装就玩不转,理由简单充分:)
在DA安装memcache过程
首先说下大环境,服务器是CentOS系统,DA使用PHP5.3.25,MySQL5.5.32,以下是编译过程。
1 2 3 4 5 6 7 |
wget http://pecl.php.net/get/memcache-3.0.8.tgz tar zxvf memcache-3.0.8.tgz cd memcache-3.0.8 export PHP_PREFIX="/usr/local" $PHP_PREFIX/php5/bin/phpize ./configure --with-php-config=$PHP_PREFIX/php5/bin/php-config make && make install |
编译完成后,修改php.ini文件,加入memcache组件。
1 2 3 |
[memcache] extension_dir = "/usr/local/php5/lib/php/extensions/no-debug-non-zts-20090626/" extension = "memcache.so" |
全部完成后,重载下Apache。
service httpd restart
最后,查看phpinfo中的memcache组件情况。
其他事项
最后,还是有几点注意事项大家留意下。
1.我在PHP5.3.25和PHP5.2.17下都试过这个教程,不同需要留意的地方是extension_dir的差异,比如PHP5.2.17下就是/usr/local/lib/php/extensions/no-debug-non-zts-20060613/;
2.修改php.ini时,请将memcache项目放到Zend的上面;
3.本文只是简述在DA上安装了memcache组件,大家也可以调整默认的配置,比如,通过在php.ini中添加修改,举一个最简单的例子,默认的memcache.chunk_size是32M的,我们也可以通过在php.ini中加入memcache.chunk_size=64M来调整这一设定。