memcached安装及使用

阅读更多
1、安装
下载memcached 及libevent (memcached 依赖包) ,解压缩安装。
# tar -xzf libevent.tar.gz
# cd libevent
# ./configure --prefix=/usr
# make
# make install
# cd ..
# tar -xzf memcached.tar.gz
# cd memcached
# ./configure --prefix=/usr
# make
# make install
2、运行
# ./memcached -d -m 2048 -l 10.0.0.40 -p 11211
-d 以守护程序(daemon)方式运行 memcached;
-m 设置 memcached 可以使用的内存大小,单位为 M;
-l 设置监听的 IP 地址,如果是本机的话,通常可以不设置此参数;
-p 设置监听的端口,默认为 11211,所以也可以不设置此参数;
-u 指定用户,如果当前为 root 的话,需要使用此参数指定用户。
以守护进程方式运行,推荐内存占用至少2G以上。对象都被缓存到内存中,关闭时,缓存数据也同时消失。
3、客户端
目前Perl/PHP/Python/Ruby/Java/C#/C 等都有相应的客户端API。
客户端通过API与memcached 服务建立链接,接下来就是操作数据的get,set了。
  
  
  
  
Perl Example

sub get_foo_object {
my $foo_id = int(shift);
my $obj = $::MemCache->get("foo:$foo_id");//获取对象
return $obj if $obj;

$obj = $::db->selectrow_hashref("SELECT .... FROM foo f, bar b ".
"WHERE ... AND f.fooid=$foo_id");
$::MemCache->set("foo:$foo_id", $obj);//存入对象
return $obj;
}
4、memcached的优势
一般来说都会把应用和缓存放在一起处理,这也就是说一个产品有多个模块,每个模块单独部署,缓存就会被复制多次,同时意味着浪费了内存和降低了命中率。
如果你用一个跨进程和线程的缓存,当有多台机器,每台机器都会有一个cache,如果要求数据同步的话,那么复制缓存就会变成一个瓶颈。
memcached就是提供一个在多台机器之间的全局缓存。一般推荐memcached server与一个占用cpu较高内存较小的应用部署在同一台机器上,可以
节省硬件开销。

你可能感兴趣的:(memcached,Perl,Python,Ruby,PHP)