`
奔跑的羚羊
  • 浏览: 570724 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

Memcache的安装

阅读更多
1.下载memcached-1.2.6.tar.gz  http://www.danga.com/memcached/download.bml

2.下载libevent。http://www.monkey.org/~provos/libevent/  
   Memcache用到了libevent这个库用于Socket的处理。

3.先安装libevent
   tar xvfz  libevent-1.4.9-stable.tar.gz
   cd libevent-1.4.9-stable
   ./configure -prefix=/usr
   make
   make install


4.测试libevent是否安装成功:
   # ls -al /usr/lib | grep libevent
lrwxrwxrwx    1 root root          21  1月  3 14:24 libevent-1.4.so.2 -> libevent-1.4.so.2.1.2
-rwxr-xr-x    1 root root      280766  1月  3 14:24 libevent-1.4.so.2.1.2
-rw-r--r--    1 root root      367950  1月  3 14:24 libevent.a
lrwxrwxrwx    1 root root          26  1月  3 14:24 libevent_core-1.4.so.2 -> libevent_core-1.4.so.2.1.2
-rwxr-xr-x    1 root root      107531  1月  3 14:24 libevent_core-1.4.so.2.1.2
-rw-r--r--    1 root root      146970  1月  3 14:24 libevent_core.a
-rwxr-xr-x    1 root root        1009  1月  3 14:24 libevent_core.la
lrwxrwxrwx    1 root root          26  1月  3 14:24 libevent_core.so -> libevent_core-1.4.so.2.1.2
lrwxrwxrwx    1 root root          27  1月  3 14:24 libevent_extra-1.4.so.2 -> libevent_extra-1.4.so.2.1.2
-rwxr-xr-x    1 root root      224026  1月  3 14:24 libevent_extra-1.4.so.2.1.2
-rw-r--r--    1 root root      282358  1月  3 14:24 libevent_extra.a
-rwxr-xr-x    1 root root        1016  1月  3 14:24 libevent_extra.la
lrwxrwxrwx    1 root root          27  1月  3 14:24 libevent_extra.so -> libevent_extra-1.4.so.2.1.2
-rwxr-xr-x    1 root root         974  1月  3 14:24 libevent.la
lrwxrwxrwx    1 root root          21  1月  3 14:24 libevent.so -> libevent-1.4.so.2.1.2

还不错,都安装上了。

5.再安装memcached,只是需要在配置时需要指定libevent的安装路径即./configure –with-libevent=/usr
   tar xvfz  memcached-1.2.6.tar.gz
   cd  memcached-1.2.6
   ./configure -with-libevent=/usr --enable-threads
   make && make install

安装完成后会把memcached放到 /usr/local/bin/memcached
--enable-threads是使用多线程模式,默认是4,线程数要少于CUP数

6.测试是否成功安装memcached
   # ls -al /usr/local/bin/mem*
-rwxr-xr-x  1 root root 121257  1月  3 14:38 /usr/local/bin/memcached
-rwxr-xr-x  1 root root 130187  1月  3 14:38 /usr/local/bin/memcached-debug


7.启动Memcache的服务器端
#/usr/local/bin/memcached -d -m 10 -u root -l 192.168.105.73 -p 12000 -c 256 -P /tmp/memcached.pid 

-d选项是启动一个守护进程,
-m是分配给Memcache使用的内存数量,单位是MB,我这里是10MB,
-u是运行Memcache的用户,我这里是root,
-l是监听的服务器IP地址,如果有多个地址的话,我这里指定了服务器的IP地址192.168.105.73,
-p是设置Memcache监听的端口,我这里设置了12000,最好是1024以上的端口,
-c选项是最大运行的并发连接数,默认是1024,我这里设置了256,按照你服务器的负载量来设定,
-P是设置保存Memcache的pid文件,我这里是保存在 /tmp/memcached.pid

8.测试Memcache的服务器端
# telnet 192.168.105.73 12000
Trying 192.168.105.73...
Connected to 192.168.105.73.
Escape character is '^]'.
set foo 0 0 3     (保存命令)输入
bar               (数据)输入
STORED            (结果)输出
get foo           (取得命令)输入
VALUE foo 0 3     (数据)输出
bar               (数据)输出


9.结束Memcache进程
# kill `cat /tmp/memcached.pid`



10.在64位Linux上安装MemCached
启动memcached命令时出现错误:
[@root lib]#/usr/local/bin/memcached -h
/usr/local/bin/memcached: error while loading shared libraries: libevent-1.4.so.2: cannot open shared object file: No such file or directory

由于是库文件依赖有问题,则使用libs参数:
[@root lib]# LD_DEBUG=libs /usr/local/bin/memcached -h
     30495:     find library=libevent-1.4.so.2 [0]; searching
     30495:      search cache=/etc/ld.so.cache
     30495:      search path=/lib64/tls/x86_64:/lib64/tls:/lib64/x86_64:/lib64:/usr/lib64/tls/x86_64:/usr/lib64/tls:/usr/lib64/x86_64:/usr/lib64            (system search path)
     30495:       trying file=/lib64/tls/x86_64/libevent-1.4.so.2
     30495:       trying file=/lib64/tls/libevent-1.4.so.2
     30495:       trying file=/lib64/x86_64/libevent-1.4.so.2
     30495:       trying file=/lib64/libevent-1.4.so.2
     30495:       trying file=/usr/lib64/tls/x86_64/libevent-1.4.so.2
     30495:       trying file=/usr/lib64/tls/libevent-1.4.so.2
     30495:       trying file=/usr/lib64/x86_64/libevent-1.4.so.2
     30495:       trying file=/usr/lib64/libevent-1.4.so.2
     30495:
/usr/local/bin/memcached: error while loading shared libraries: libevent-1.4.so.2: cannot open shared object file: No such file or directory

复制一份或者建一个软链接即可解决问题:
[@root lib]# ln -s /usr/lib/libevent-1.4.so.2 /usr/lib64/libevent-1.4.so.2


11.telnet方式访问memcached
telnet 192.168.105.73 12111

stats: 服务器将返回每行按照 STAT 开始的状态信息,包括20行,20项左右的信息,包括守护进程的pid、版本、保存的项目数量、内存占用、最大内存限制等等信息。

12.memcached工具memcached-tool
下载地址:
http://code.sixapart.com/svn/memcached/trunk/server/scripts/memcached-tool
./memcache-tool 192.168.105.73:12111 



13.emcached服务器运行情况的参数:

pid memcache服务器的进程ID
uptime 服务器已经运行的秒数
time 服务器当前的unix时间戳
version memcache版本
pointer_size 当前操作系统的指针大小(32位系统一般是32bit)
rusage_user 进程的累计用户时间
rusage_system 进程的累计系统时间
curr_items 服务器当前存储的items数量
total_items 从服务器启动以后存储的items总数量
bytes 当前服务器存储items占用的字节数
curr_connections 当前打开着的连接数
total_connections 从服务器启动以后曾经打开过的连接数
connection_structures 服务器分配的连接构造数
cmd_get get命令(获取)总请求次数
cmd_set set命令(保存)总请求次数
get_hits 总命中次数
get_misses 总未命中次数
evictions 为获取空闲内存而删除的items数(分配给memcache的空间用满后需要删除旧的items来得到空间分配给新的items)
bytes_read 总读取字节数(请求字节数)
bytes_written 总发送字节数(结果字节数)
limit_maxbytes 分配给memcache的内存大小(字节)
threads 当前线程数
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics