安装 Memcache 服务器.
服务器初始化环境: Ubuntu-8.04.2 base-system + 编译环境.
载 memcache 和 libevent 包. Memcache用到了libevent这个库用于Socket的处理.
1 2 3 4 5 6 7 8 9 10 11 12 | wget http://www.monkey.org/~provos/libevent-1.3.tar.gz wget http://memcached.googlecode.com/files/memcached-1.2.8.tar.gz tar -zxf libevent-1.3.tar.gz tar -zxf memcached-1.2.8.tar.gz cd libevent-1.3 ./configure --prefix=/usr make sudo make install cd ../memcached-1.2.8 ./configure --with-libevent=/usr make sudo make install |
安装后 memcached 会这 /usr/local/bin/目录下. 启动Memcache的服务器端:
sudo /usr/local/bin/memcached -d -m 64 -u root -l 192.168.1.232 -p 12001 -c 32 -P /tmp/memcached.pid
-d 选项是启动一个守护进程,
-m 是分配给Memcache使用的内存数量,单位是MB,我这里是10MB,
-u 是运行Memcache的用户,我这里是root,
-l 是监听的服务器IP地址,如果有多个地址的话,我这里指定了服务器的IP地址192.168.0.200,
-p 是设置Memcache监听的端口,我这里设置了12000,最好是1024以上的端口,
-c 选项是最大运行的并发连接数,默认是1024,我这里设置了256,按照你服务器的负载量来设定,
-P 是设置保存Memcache的pid文件,我这里是保存在 /tmp/memcached.pid,
结束Memcache进程,执行:
sudo kill `cat /tmp/memcached.pid`
可以启动多个守护进程, 端口不能一样.
现在用PHP脚本测试一下. 测试服务器是 192.168.1.230
1 2 3 4 5 6 7 8 9 10 | /** * memTest.php * Memcache 服务器测试脚本 */ //phpinfo(); $mem = new Memcache(); $mem->addServer('192.168.1.232', 12001); $mem->set('mmKey', 'Hello, Baby!'); var_dump($mem->get('mmKey')); |
http://localhost/memTest.php 可以看到输出了
string(12) "Hello, Baby!"
Memcache 服务器安装配置完毕.
快速搭建Linux开发测试WEB服务器系列9-编译安装PHP扩展
上篇我们介绍了安装 PHP 相关信息. 这篇我们介绍一下如何安装 PHP 的扩展. 目前用的非常广泛的扩展 比如: Memcache, ImageMagick 等. 安装扩展也非常的简单. 掌握了安装方法. 安装其他所需要的扩展也就易如反掌了.
OK. 我们先来安装一下 Memcache 扩展. 可以到 http://pecl.php.net/package/memcache 下载最新的稳定包. 目前 stable 版本是 2.2.5, 我们也将安装该版本. 下载 memcache-2.2.5.tgz 解压安装
1 2 3 4 5 6 7 | tar -zxf memcache-2.2.5.tgz -C ~/sources rm ~/sources/package.xml cd ~/sources/memcache-2.2.5 /usr/local/php/bin/phpize ./configure --with-php-config=/usr/local/php/bin/php-config make sudo make install |
这样扩展就安装完成了. 现在来修改 php.ini 载入该扩展, 这个和 window 下没有什么区别. 只不过在 window 下安装扩展只要下载该扩展的 dll 文件放入到php的ext目录下即可, linux 下要自己编译成 so 文件.
1 | sudo gedit /usr/local/php/php.ini |
修改 extension_dir = "./" 改成下面的这样. 具体的路径请在自己安装的系统里确认一下.
extension_dir = "/usr/local/php/lib/php/extensions/no-debug-non-zts-20060613/"
然后在扩展列表那里添加一行:
extension=memcache.so
保存退出, 重启 Apache 服务, 刷新 http://localhost/phpinfo.php 可以看到 memcache 扩展已经被编译进php扩展模块中.
现在在装个图片处理扩展 ImageMagick, 官方网站: http://www.imagemagick.org 下载最新的包 ImageMagick.tar.gz 解压安装. ImageMagick 是 Linux 下的专门图片处理程序. PHP可以通过安装 imagick 扩展调用其功能. imagick 下载地址: http://pecl.php.net/package/imagick 目前最新稳定版本为 2.2.2, 我们也将安装此版本作为PHP的扩展. 同样下载好安装.
1 2 3 4 5 6 7 8 9 10 11 12 13 | tar -zxf ImageMagick.tar.gz -C ~/sources cd ~/sources/ImageMagick-6.5.2-8 ./configure make sudo make install cd ~/downs tar -zxf imagick-2.2.2.tgz -C ~/sources rm ~/sources/package.xml cd ~/sources/imagick-2.2.2 /usr/local/php/bin/phpize ./configure --with-php-config=/usr/local/php/bin/php-config make sudo make install |
把imagick扩展添加到PHP使其生效和memcache模式一样. 这里不再重复了. 这样. PHP 在linux下的扩展就简单的介绍完了. 以后如果自己需要什么扩展按照以上的模式编译安装就可以了. 这篇就先介绍这些. 下篇我们介绍一套高效的 Web 服务器搭建方案 Nginx + fastCgi + php.