經驗不在于年限,在于積累---專注互聯網軟件開發

          把工作當事業做,把項目當作品做!

            BlogJava :: 首頁 :: 聯系 :: 聚合  :: 管理
            55 Posts :: 0 Stories :: 66 Comments :: 0 Trackbacks


          Linux
          Memcached安裝步驟詳解

          (友情提示:本博文章歡迎轉載,但請注明出處:hankchen,http://www.aygfsteel.com/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.         代碼測試:

           1package memcached;
           2
           3import com.danga.MemCached.MemCachedClient;
           4import 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 */

          15public 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

          輸出結果:

           1set( 0 ): true
           2get( 0 ): ChenXinHan(0)
           3set( 1 ): true
           4get( 1 ): ChenXinHan(1)
           5set( 2 ): true
           6get( 2 ): ChenXinHan(2)
           7set( 3 ): true
           8get( 3 ): ChenXinHan(3)
           9set( 4 ): true
          10get( 4 ): ChenXinHan(4)
          11set( 5 ): true
          12get( 5 ): ChenXinHan(5)
          13set( 6 ): true
          14get( 6 ): ChenXinHan(6)
          15set( 7 ): true
          16get( 7 ): ChenXinHan(7)
          17set( 8 ): true
          18get( 8 ): ChenXinHan(8)
          19set( 9 ): true
          20get( 9 ): ChenXinHan(9)
          (友情提示:本博文章歡迎轉載,但請注明出處:陳新漢,http://www.aygfsteel.com/hankchen


          posted on 2010-01-04 13:32 hankchen 閱讀(2522) 評論(1)  編輯  收藏 所屬分類: 緩存+Memcached+Redis

          Feedback

          # re: linux下Memcached安裝步驟詳解 2010-01-06 14:07 99讀書人
          了考試的開發看電視  回復  更多評論
            


          只有注冊用戶登錄后才能發表評論。


          網站導航:
           
          主站蜘蛛池模板: 福清市| 桦川县| 青神县| 温宿县| 乐都县| 淮南市| 高台县| 襄城县| 长沙县| 兴化市| 茶陵县| 忻州市| 丹江口市| 陆丰市| 孟州市| 桂林市| 内乡县| 洛浦县| 曲水县| 九龙县| 宜阳县| 曲阳县| 施甸县| 全椒县| 利津县| 油尖旺区| 从化市| 修文县| 舟曲县| 会昌县| 揭阳市| 都江堰市| 兰坪| 斗六市| 两当县| 百色市| 古田县| 信丰县| 本溪市| 土默特左旗| 潜江市|