linux下Memcached安装步骤详解

linux下Memcached安装步骤详解


Linux
Memcached安装步骤详解

(友情提示:本博文章欢迎转载,但请注明出处:hankchen,http://www.blogjava.net/hankchen
1.         首先下载memcached libevent 包。 Memcached用到了libevent这个库用于Socket的处理。下面是下载的两个包文件:

libevent-1.4.12-stable.tar.gz

memcached-1.4.3.tar.gz

2.         上传这两个包到/tmp/chenxinhan/memcached目录(自建目录)下。

3.         解压并安装:

tar -zxf libevent-1.4.12-stable.tar.gz

tar -zxf memcached-1.4.3.tar.gz

cd libevent-1.4.12-stable

./configure --prefix=/usr

make

make install

cd ../ memcached-1.4.3

./configure --with-libevent=/usr

make

makeinstall

4.         启动Memcached

完成上述操作后,memcached被安装/usr/local/bin/目录下。启动Memcache的服务器的命令:

/usr/local/bin/memcached -d -m 1024 -u root -l 192.168.13.236 -p 12001 -c 256 -P  /tmp/chenxinhan/memcached.pid

参数说明:

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

5.         结束Memcache进程,执行:

kill  `cat /tmp/chenxinhan/memcached.pid`

或者:

ps -aux | grep memcache

然后直接killmemcache进程。

6.         可以启动多个守护进程,但是端口不能一样。这样就可以在一台机器上拥有多个Memcached

7.         代码测试:

 1 package  memcached;
 2
 3 import  com.danga.MemCached.MemCachedClient;
 4 import  com.danga.MemCached.SockIOPool;
 5
 6 /** */ /**
 7 *  Copyright (C): 2009
 8 *  @author 陈新汉
 9 *  Nov 17, 2009 3:35:40 PM
10 */

11
12 /** */ /**
13 * 使用memcached client for java 客户端
14 */

15 public   class  JavaMemcachedClientTest  {
16
17    /** *//**
18     * @param args
19     */

20    public static void main(String[] args) {
21        /**//*初始化SockIOPool,管理memcached的连接池*/
22        String[] servers = "192.168.13.236:12001" };
23        SockIOPool pool = SockIOPool.getInstance();
24        pool.setServers(servers);
25        pool.setFailover(true);
26        pool.setInitConn(10);
27        pool.setMinConn(5);
28        pool.setMaxConn(50);
29        pool.setMaintSleep(30);
30        pool.setNagle(false);
31        pool.setSocketTO(3000);
32        pool.setAliveCheck(true);
33        pool.initialize();
34        /**//*建立MemcachedClient实例*/
35        MemCachedClient memCachedClient = new MemCachedClient();
36        for (int i = 0; i < 10; i++{
37            /**//*将对象加入到memcached缓存*/
38            boolean success = memCachedClient.set("" + i, "ChenXinHan("+i+")");
39            /**//*从memcached缓存中按key值取对象*/
40            String result = (String) memCachedClient.get("" + i);
41            System.out.println(String.format("set( %d ): %s", i, success));
42            System.out.println(String.format("get( %d ): %s", i, result));
43        }

44    }

45
46}

47

输出结果:

 1 set(  0  ):  true
 2 get(  0  ): ChenXinHan( 0 )
 3 set(  1  ):  true
 4 get(  1  ): ChenXinHan( 1 )
 5 set(  2  ):  true
 6 get(  2  ): ChenXinHan( 2 )
 7 set(  3  ):  true
 8 get(  3  ): ChenXinHan( 3 )
 9 set(  4  ):  true
10 get(  4  ): ChenXinHan( 4 )
11 set(  5  ):  true
12 get(  5  ): ChenXinHan( 5 )
13 set(  6  ):  true
14 get(  6  ): ChenXinHan( 6 )
15 set(  7  ):  true
16 get(  7  ): ChenXinHan( 7 )
17 set(  8  ):  true
18 get(  8  ): ChenXinHan( 8 )
19 set(  9  ):  true
20 get(  9  ): ChenXinHan( 9 )
(友情提示:本博文章欢迎转载,但请注明出处:陈新汉,http://www.blogjava.net/hankchen


你可能感兴趣的:(linux下Memcached安装步骤详解)