您当前的位置:首页 > 计算机 > 服务器 > 万维网络 > 中间件

在 Windows 主机中安装 Memcache 内存缓存

时间:12-14来源:作者:点击数:

Memcache 是一个出色的内存缓存软件,使用 key-value 键值对的方式保存数据,基本不限制保存数据的类型,你可以保存文本、数组、JSON数据等,甚至可以直接保存生成 HTML 代码,使用上非常的方便,而且几乎支持现有的大多数编程语言。

对于站长来说,最多的还是缓存数据库的查询结果,以最快的方式返回数据,提升网站的用户体验,针对 PHP 的扩展,我们可以像使用 MySQL 扩展那样使用Memcached。

Memcached能安装到不同的操作系统上面,这篇文章主要介绍在Windows中安装Memcached分布式内存对象缓存系统,Memcache的安装分为两个过程:memcache服务器端的安装和memcached客户端的安装。

  • 所谓服务器端的安装就是在服务器上安装Memcache实现数据的存储
  • 所谓客户端的安装就是指PHP(或者其他程序,Memcache还有其他不错的api接口提供)去使用服务器端的Memcache提供的函数,需要PHP添加扩展。

安装 Memcache

首先我们需要下载Memcached,下面是本站的缓存地址,你也可以到 官方网站 下载。

将上面的压缩包下载下来,然后解压到你电脑的任意文件夹,注意文件夹的路径最好不要包含中文,比如我解压到 C:/memcached。

在命令行安装 Memcached,Windows+R 或者开始->运行,输入 CMD 敲回车进入命令提示界面,输入 C:/memcached/memcached.exe -d install 安装,一般情况下不会有任何提示和错误。

启动 Memcached 系统,紧接着上一步,继续输入 C:/memcached/memcached.exe -d start 敲回车,以后 Memcached 将作为 Windows 的一个服务每次开机时自动启动。这样服务器端已经安装完毕了。

下载 php_memcache.dll,请自己查找对应的php版本的文件

在你的 php.ini 配置文件中加入一行 extension=php_memcache.dll

重新启动 Apache 或者是 IIS,然后查看一下 phpinfo,如果有 Memcache,那么就说明安装成功!

卸载 Memcache

卸载和安装可谓是反操作,按照下面的操作即可。

1、停止memcached程序

memcached -d stop

2、移除memcached的安装程序

memcached -d remove

3、删除memcached加入系统的服务

sc delete "Memcached Server"

使用 Memcache

缓存结果

function get_foo(foo_id)
    foo = memcached_get("foo:" . foo_id)
    return foo if defined foo

    foo = fetch_foo_from_database(foo_id)
    memcached_set("foo:" . foo_id, foo)
    return foo
end

在 Telnet 中使用

$ telnet localhost 11211
Trying 127.0.0.1...
Connected to localhost.
Escape character is '^]'.
get foo
VALUE foo 0 2
hi
END
stats
STAT pid 8861
(etc)

在 PHP 中使用

//连接
$mem = new Memcache;
$mem->connect("192.168.0.200", 12000);

//保存数据
$mem->set('key1', 'This is first value', 0, 60);
$val = $mem->get('key1');
echo "Get key1 value: " . $val ."<br />";

//替换数据
$mem->replace('key1', 'This is replace value', 0, 60);
$val = $mem->get('key1');
echo "Get key1 value: " . $val . "<br />";

//保存数组
$arr = array('aaa', 'bbb', 'ccc', 'ddd');
$mem->set('key2', $arr, 0, 60);
$val2 = $mem->get('key2');
echo "Get key2 value: ";
print_r($val2);
echo "<br />";

//删除数据
$mem->delete('key1');
$val = $mem->get('key1');
echo "Get key1 value: " . $val . "<br />";

//清除所有数据
$mem->flush();
$val2 = $mem->get('key2');
echo "Get key2 value: ";
print_r($val2);
echo "<br />";

//关闭连接
$mem->close();
方便获取更多学习、工作、生活信息请关注本站微信公众号城东书院 微信服务号城东书院 微信订阅号
上一篇:Memcached 内存缓存命令行参数说明 下一篇:很抱歉没有了
推荐内容
相关内容
栏目更新
栏目热门
本栏推荐