首页 理论教育安装Memcached10版本实战PHPMVC开发

安装Memcached10版本实战PHPMVC开发

【摘要】:Memcached最大的特点是数据存放于内存。默认情况下,Memcached将被安装到/usr/local/bin/目录下。安装Memcache扩展Memcache是PHP一个扩展模块,在安装前需要确保当前环境已经具备PHP环境。但是无论是官方文档还是第三方权威资料,都不建议在Windows下部署Memcached生产环境。接下来使用命令终端执行memcached.exe,命令如下。通过上述步骤,Memcached就自动安装完成了,接来下只需要启动即可。

Memcahced是一套小巧、高效且成熟的内存数据库。与普通的数据库不同,Memcached存放的数据只能是简单的键值对,在查询时需要根据存放的key获取数据。Memcached最大的特点是数据存放于内存。众所周知内存是计算机上数据储存最快的单元器件之一,如果将数据存放于内存中,将会获得比传统文件系统高10倍效率的读写性能。所以Memcached通常是高效存储的代名词,在很长一段时间内,Memcached都是各大型门户网站所采用的缓存系统。ThinkPHP对Memcached的支持已经非常完善,在使用前首先需要正确安装并运行,安装方式又分为Linux平台及Windows平台,下面分别介绍。

1.在Linux平台上安装Memcached

Memcached的安装比较简单,但如果要让PHP支持Memcached,还需要安装Memcache for PHP扩展。当然,读者也可以将Memcached独立安装到一台服务器,这里假设使用的是XAMPP开发环境包,现在需要安装Memcached,步骤如下所示(以Centos 6.0为例)。

(1)安装libevent

与前面介绍的HTTPSQS一样,Memcached也是使用异步事件处理的,所以在安装Memcached之前,首先需要查看当前环境是否已经安装异步事件处理函数库libevent。

978-7-111-42852-7-Part02-485.jpg

如果没有,可以使用yum进行安装,但版本可能比较低。这里将使用源代码安装,安装步骤如以下命令所示。

978-7-111-42852-7-Part02-486.jpg

默认会被安装到/usr/local/libevent-2.0.12-stable/目录下。

(2)安装Memcached

接下来就可以安装Memcached主程序了。Memcached官方网站为http://memcached.org/,读者可以在该网站上找到最新的源代码安装包,这里将使用1.4.15版本,安装过程如下。

978-7-111-42852-7-Part02-487.jpg

默认情况下,Memcached将被安装到/usr/local/bin/目录下。在启动前,还需要将libevent包存放路径加入到/etc/ls.so.conf文件中,如以下命令所示。

978-7-111-42852-7-Part02-488.jpg

978-7-111-42852-7-Part02-489.jpg

完成上述操作后,现在就可以启动Memcached主程序了,如以下命令所示。

978-7-111-42852-7-Part02-490.jpg

在启动时,常用的启动参数如下。

➢-m:最大使用内存,以MB为单位,默认64。

➢-p:Memcached启动进程所使用的TCP通信端口,默认11211。

➢-d:将Memcached作为后台守护进程运行。

➢-u:启动用户。

➢-P:进程文件存放路径。

➢-c:最大运行并发数,默认1024。

➢-l:监听服务器地址(即允许telnte登录的IP)。

启动完成后,可以直接查看主进程是否存在,判断是否启动成功。

978-7-111-42852-7-Part02-491.jpg

(3)安装Memcache扩展

Memcache是PHP一个扩展模块,在安装前需要确保当前环境已经具备PHP环境。因为只有将Memcache编译到PHP扩展模块中,开发人员才能使用PHP代码调用Memcache,PHP内置了一个编译第三方扩展的工具phpzie,接下来就利用该工具来编译Memcache,步骤如下。(www.chuimin.cn)

首先下载和解压Memcache,这里使用的版本是2.2.5,命令如下所示。

978-7-111-42852-7-Part02-492.jpg

接下来使用phpzie工具配置Memcache。假设PHP安装路径为/usr/local/php/,那么phpize路径就是/usr/local/php/bin/phpize。

978-7-111-42852-7-Part02-493.jpg

现在就可以使用make工具编译Memcache了,过程如下。

978-7-111-42852-7-Part02-494.jpg

扩展将被安装到/usr/local/php/lib/php/extensions/no-debug-non-zts-20090626/目录。最后还需要修改php.ini配置项,将该扩展目录加入到extension_dir选项。事实上php.ini已经默认加入了该扩展目录,只是被注释而已,只需要去掉注释即可,过程如下。

978-7-111-42852-7-Part02-495.jpg

978-7-111-42852-7-Part02-496.jpg

读者也可以手动添加上。保存php.ini配置文件,重启php-fpm或者web服务器,以便配置文件生效。

978-7-111-42852-7-Part02-497.jpg

至此,Memcached及Memcache都已经安装完成,通过phpinfo函数输出信息将可以看到Memcache配置项,如图10-2所示。

978-7-111-42852-7-Part02-498.jpg

图10-2 成功安装Memcache扩展

2.在Windows平台上安装Memcached

在Windows下安装Memcached主程序及Memcache扩展比较简单,使用方式不论在任何平台上都没有区别。但是无论是官方文档还是第三方权威资料,都不建议在Windows下部署Memcached生产环境。通常情况下,在Windows上只用于开发环境。下面将简单介绍在Windows 7下的安装过程。

首先需要下载Windows安装包。

978-7-111-42852-7-Part02-499.jpg

将压缩包解压到指定的目录,例如C:\memcached,进入该目录将会看到memcached.exe主程序。接下来使用命令终端执行memcached.exe,命令如下。

978-7-111-42852-7-Part02-500.jpg

通过上述步骤,Memcached就自动安装完成了,接来下只需要启动即可。

978-7-111-42852-7-Part02-501.jpg

启动完成后,可以通过任务管理器查看到Memcached进程,也可使用netstat–an查看11211端口,检测Memcached是否安装成功。接下来只需要安装PHP扩展即可。

首先下载memcache.dll扩展,这里使用的版本为2.2.5.

978-7-111-42852-7-Part02-502.jpg

解压后将得到php_memcache.dll扩展文件。将php_memcache.dll复制到PHP扩展目录,通常该目录位于PHP安装目录下的ext目录(即php\ext)。打开php.ini配置文件,将php_memcache.dll扩展加入到配置项中,如以下代码所示。

978-7-111-42852-7-Part02-503.jpg

保存配置文件,重启Web服务器,通过phpinfo函数可以看到Memcache选项,证明PHP扩展安装成功。