一、memcached 服务器的安装
1. 下载 memcached 的 windows 安装包:
memcached-1.2.1-win32.zip
2. 解压后,可看到
memcached.exe 文件,在 E 盘新建一个文件夹
memcached,然后将 memcached.exe 拷贝至
E:\memcached 目录下
3. 打开 cmd,切换至 E:\memcached 目录,执行下面的命令进行安装:
memcached.exe -d install
4. 执行命令:memcached -h,查看 memcached 服务的帮助信息,如果有相关信息,则说明安装成功,windows的服务管理界面也会看到对应的服务
5. 执行下面的命令,启动 memcached 服务器。
memcached -d start
下面列举几个控制 memcached 服务 的命令(.exe 也可以省略):
memcached.exe -d start 开启 (默认内存大小是64M,默认端口号是11211)
memcached.exe -d stop 停止
memcached.exe -d uninstall 卸载
memcached.exe -d restart 重启
memcached.exe -d -m 100 start 在开启memcached服务的同时,指定其能够使用的最大内存为100M
当然,我们也可以在 windows 的服务管理界面,开启或关闭
memcached 服务。
二、如何连接 memcached 服务器
客户端连接 memcached 服务器的方法,主要介绍三种:
1. 使用 telnet 客户端
首先,检查 windows 系统是否已安装 telnet 客户端(XP系统默认已经安装telnet),打开
控制面板 -> 程序和功能 -> 打开或关闭新的功能 -> telnet客户端,查看 telnet客户端 是否已勾选,如果没勾选,就将其勾选,然后点击确定,就会自动安装 telnet 客户端。
然后,打开 cmd,输入如下命令,连接
memcached 服务器:
telnet 127.0.0.1 11211
输入下面的命令,查看 memcached 服务器的相关信息,顺便检测是否连接成功
stats
如果有信息输出,则说明连接成功。
下面简单介绍几个操作 memcached 服务器的命令:
新增数据:
add 键名 标识位 生命周期 字符串的长度
回车后,输入对应的值(字符串),如:
add name 1 300 4
jack (键名name,标识位1,生命周期300s,长度4,值为jack)
set 命令的操作方法和 add 一样,只不过 set 命令,既可以新增数据,又可以修改数据(键名存在则更新)
读取数据:
get 键名
如: get name
删除数据:
delete 键名
删除所有的数据:
flush_all
退出客户端:
quit
2. 使用 Xshell 终端连接软件
下载安装 Xshell 软件后,打开 Xshell ,新建会话,使用 TELNET 协议连接127.0.0.1的11211端口,连接成功后,使用上面的命令即可。
3. 使用 php 的 memcache 扩展
php 操作 memcached 服务器,需要先安装 php 的 memcache 扩展。
首先,
下载 php_memcache 的扩展:
php_memcache-3.0.8-5.5-ts-vc11-x86.zip
(注意:请下载和 php 版本对应的 memcache扩展,如果该版本不对,请到
http://pecl.php.net/ 搜索 memcache 后,下载正确的版本)
然后,解压,将文件夹中的
php_memcache.dll 文件拷贝到 php 的扩展目录,并修改 php 的配置文件 php.ini,加上如下代码:
extension=php_memcache.dll
保存后退出,重启 apache,利用 phpinfo() 函数,检测
php_memcache 是否安装成功。
如果扩展安装成功,就可以在使用 php 操作 memcached 服务器中的数据了,下面给出一个简单的例子:
<?php
// phpinfo();
try {
$memcache = new Memcache();
$key = 'mem1001';
$value = 'user001';
$memcache->connect('127.0.0.1', '11211');
$memcache->add($key, $value);
var_dump($memcache->get($key));
$memcache->close();
} catch (Exception $e) {
echo $e->getMessage();
}
三、
memcache 的应用场景
- 把从数据库读取出来的数据(也就是 select 语句的结果),利用 memcache 进行缓存。
- 利用 memcache 来处理 session 。
四、
memcache 的安全防护
1. 只允许内网访问。在开启 memcache 时,设定相关参数,只允许内网 IP 访问(一般是 web 服务器的那台主机的内网 IP)。
2. 设置防火墙。
iptables -A INPUT -p tcp -s 192.168.1.122 -dport 11211 -j ACCEPT
iptables -A INPUT -p ucp -s 192.168.1.122 -dport 11211 -j ACCEPT