memcache 分布式 安装

张映 发表于 2010-02-03

分类目录: cache, nosql

标签:, , , , ,

一,memcache分布式的解释

memcache分布式,说白一点就是在很多台机子上装memcache,同时使用他们。

二,启动多个memcached进程,可以在一台机子上,可以在多台机子上

/usr/local/bin/memcached -d -m 20 -u zhangy -p 12000 -P ./memcached.pid
/usr/local/bin/memcached -d -m 20 -u zhangy -p 13000 -P ./mem.pid

我在同一台机子上,启动了二个memcached进程

[zhangy@BlackGhost drochilli]$ ps -e |grep memcache
17904 ?        00:00:00 memcached
17906 ?        00:00:00 memcached

表明已经启动了二个进程

三,修改php文件

$mem->addServer("127.0.0.1",12000)or die ("Could not add server 12000");
$mem->addServer("127.0.0.1",13000)or die ("Could not add server 13000");

四,测试结果

从上图中就可以看出,二个服务器都启动了,并且都起作用了,12000这个使用内存为11.1KB,13000这台端口使用内存为5.9KB。
简单吧,我就不喜欢复杂的东西。



转载请注明
作者:海底苍鹰
地址:http://blog.51yip.com/cache/108.html

10 条评论

  1. johnny 留言

    学习一下关于memcache分布式的帖子,有一个地方不明白
    1、关于“三,修改php文件
    $mem->addServer("127.0.0.1",12000)or die ("Could not add server 12000");
    $mem->addServer("127.0.0.1",13000)or die ("Could not add server 13000");”
    是修改那个php文件。
    2、我把memache.php放到目录底下访问总是显示“Cant connect to:v:a”麻烦指教一下。

  2. 张映 留言

    1,memcache你要用php的扩展,new memcache()出来之后就可以addServer了。

    2,这个监测的php文件,memcache.php要修改里面的用户名和密码的。你可以打开这个php看一下,如果密码对了,还连接不上,看了你的memcached进程起来了没有。

  3. johnny 留言

    php的扩展(memcache)我已经安装了,但是
    $mem->addServer("127.0.0.1",12000)or die ("Could not add server 12000");
    $mem->addServer("127.0.0.1",13000)or die ("Could not add server 13000");
    我还是不明白以上2句要添加到哪里?麻烦详细告诉一下。

  4. 张映 留言

    < ?php
    $mem = new Memcache;
    $mem->addServer("127.0.0.1",12000)or die ("Could not connect");
    $mem->addServer("127.0.0.1",13000)or die ("Could not connect");
    $mem->set('key', 'This is a test!memcache is work', 0, 60);
    $val = $mem->get('key');
    echo $val;
    ?>

    这里简单举个例子,$mem->set值后,你可以把二个连接注释掉一个,值也是能得到的。

  5. fbbin 留言

    我很想知道,你的那个关于memcache的数据信息的那个图片是怎么出来的,换句话说能不能吧这个软件推荐下,我正在找一个管理memcache的软件,我的邮件上面 谢谢 非常谢谢!

  6. 张映 留言

    memcache的源安装文件里面有一个memcache.php文件,这个就是监测工具

  7. 杜小白 留言

    我的问题是把memache.php放到目录底下访问总是显示“Cant connect to:v:a”,但是我用phpinfo函数检测memcache模块已经安装好了的,另外,memcache的源安装文件里有个run-tests的文件,不知为什么我运行却显示,ERROR: environment variable TEST_PHP_EXECUTABLE must be set to specify PHP executable!
    想问博主我大约要怎么解决啊?

  8. 张映 留言

    90%的可能性是你的php没装好,你的php是自己手动编译安装的吧。

  9. 杜小白 留言

    但我的PHPINFO可正常运行,网站也能正常运作的。我查看phpinfo,也有显示memcache模块的。

  10. knuckles 留言

    出現 Cant connect to:v:a 是因為那個版本的 memcache.php 裡的 PHP 程式有 bug,搜尋 return value; 改成 return $value; 就可以了