Memcache学习笔记之 服务端环境搭建
好记心不如烂笔头,由于项目中有用memcache来存取session。当时只简单来用了下。
他的很多机制还不明白,一哥们也曾极力推荐过这个分布式的缓存系统。今天系统的看了下memcache。觉得收获还是不少。记录下来
Memcache是danga.com的一个开源项目,它是一个高性能的分布式的内存对象缓存系统,通过在内存里维护一个统一的巨大的Hash表,能够用来存储各种格式的数据。
服务端搭建还是挺简单的。网上很多
需要用到的包
memcached-1.4.7.tar.gz
wget http://memcached.googlecode.com/file/memcached-1.4.7.tar.gz
同时需要下载的依赖包libevent,这是专门处理事件触发的网络库,跨平台 最新包已经是2.x了
libevent-1.4.14b-stable.tar.gz
wget http://monkey.org/~provos/libevent-1.4.14b-stable.tar.gz
下载就绪后,开始安装了.还是比较顺利
因为libevent是memcached的依赖包。先当然是安装这个
1 tar zxf libevent-1.4.14b-stable.tar.gz
2 cd libevent-1.4.14b-stable
3 ./configure --prefix=/usr/local/libevent-1.4.14b-stable
4 make
5 make install
6
7 tar zxf memcached-1.4.7.tar.gz
8 cd memcached-1.4.7
9 ./configure --prefix=/usr/local/memcached-1.4.7 --with-libevent=/usr/local/libevent-1.4.14b-stable
10 make
11 make install
2个库编译安装后开始启动memcached(默认是本地启动不需要加 -l 参数)
cd /usr/local/memcached-1.4.7
./bin/memcached -d -m 128 -u root -p 11211 -c 512 -P /tmp/memcached.pid
关闭进程
kill `cat /tmp/memcached.pid`
ps aux|grep memcache 查看有没有启动成功
附带memcached 启动的一些参数
-p 指定端口号(默认11211)
-m 指定最大使用内存大小(默认64MB)
-t 线程数(默认4)
-l 连接的IP地址, 默认是本机
-d start 启动memcached服务
-d restart 重起memcached服务
-d stop|shutdown 关闭正在运行的memcached服务
-m 最大内存使用,单位MB。默认64MB
-M 内存耗尽时返回错误,而不是删除项
-c 最大同时连接数,默认是1024
-f 块大小增长因子,默认是1.25
-n 最小分配空间,key+value+flags默认是48
到这里服务端简单搭建已经完毕。
ps:今天看了这篇blog让我恍然大悟,感谢原作者的共享。
memcache集群问题归纳:
blog: http://xok.la/2010/06/memcached_questions.html