天天看點

Memcache 介紹與部署

Memcache 介紹與部署

Memcache介紹:danga.com的一個開源項目,它是一個高性能的分布式的記憶體對象緩存系統

              通過在記憶體裡維護一個統一的巨大的Hash表,能夠用來存儲各種格式的資料

            * 檢視目前的memcache連接配接數

              # netstat -n | grep :11211 | wc -l

            * 檢視預設允許的連接配接數,這裡設定的11211端口預設連接配接數是40960

              # cat /etc/rc.local

            * 如何檢視memcache伺服器端版本

              # ./memcached  -h

            * Linux下的Memcache安裝

              # cd /usr/local/src

裝yum擴充源:# yum install -y epel-release

memcache子產品:# yum install -y php-pecl-memcached

下載下傳Memcache:# wget http://www.danga.com/memcached/dist/memcached-1.2.0.tar.gz

下載下傳libevent:# wget http://www.monkey.org/~provos/libevent-1.2.tar.gz

先裝libevent:# tar zxvf libevent-1.2.tar.gz 

              # cd libevent-1.2

              # ./configure --prefix=/usr/local/libevent

              # make

              # make install

            * 測試libevent是否安裝成功

              # ls -al /usr/local/libevent/lib | grep libevent

                lrwxrwxrwx 1 root root     21 Apr 14 13:01 libevent-1.2.so.1 -> libevent-1.2.so.1.0.3

                -rwxr-xr-x 1 root root 264056 Apr 14 13:01 libevent-1.2.so.1.0.3

                -rw-r--r-- 1 root root 430388 Apr 14 13:01 libevent.a

                -rwxr-xr-x 1 root root    820 Apr 14 13:01 libevent.la

                lrwxrwxrwx 1 root root     21 Apr 14 13:01 libevent.so -> libevent-1.2.so.1.0.3

安裝memcached # cd /usr/local/src

              # yum install -y libevent-devel 

              # tar zxvf memcached-1.2.0.tar.gz

              # cd memcached-1.2.0

              # ./configure --with-libevent=/usr/local/memcached

            * 測試是否成功安裝memcached

              # ls -al /usr/local/bin/mem*

                -rwxr-xr-x 1 root root 113084 Apr 14 13:23 /usr/local/bin/memcached

                -rwxr-xr-x 1 root root 117439 Apr 14 13:23 /usr/local/bin/memcached-debug

            * 安裝Memcache的PHP擴充

              1.在http://pecl.php.net/package/memcache,選擇想要下載下傳的memcache版本

              2.安裝PHP的memcache擴充

              # tar zxvf memcache-2.2.1.tgz

              # cd memcache-2.2.1

              # /usr/local/php5.6/bin/phpize

                運作這個指令就會生成一個腳本,然後編譯擴充 

              # ./configure --enable-memcache --with-php-config=/usr/local/php5.6/bin/php-config --with-zlib-dir

              # vim /usr/local/php5.6/etc/php.ini 

                extension_dir = "/usr/local/php5.6/lib/php/extensions/no-debug-non-zts-20131226/"

                extension=memcache.so

memcached的基本設定

            1)啟動Memcache的伺服器端

              # /usr/local/bin/memcached -d -m 100 -u root -l 127.0.0.1 -p 12000 -c 300 -P /tmp/mem cached.pid

                -d選項是啟動一個守護程序,

                -m是配置設定給Memcache使用的記憶體數量,機關是MB,我這裡是10MB,

                -u是運作Memcache的使用者,我這裡是root,

                -l是監聽的伺服器IP位址,如果有多個位址的話,我這裡指定了伺服器的IP位址192.168.0.200,

                -p是設定Memcache監聽的端口,我這裡設定了12000,最好是1024以上的端口,

            2)如果要結束Memcache程序,執行:

              # kill `cat /tmp/memcached.pid`

            3)重新開機apache,service httpd restart

            4)Memcache環境測試

              運作下面的php檔案,如果有輸出This is a test! 就表示環境搭建成功

              # cd /var/www/html

              # vim hjt.php

                <?php

                $mem = new Memcache;

                $mem->connect("127.0.0.1", 11211);

                $mem->set('key', 'This is a test!', 0, 60);

                $val = $mem->get('key');

                echo $val;

                ?>

本文轉自super李導51CTO部落格,原文連結:http://blog.51cto.com/superleedo/1891769 ,如需轉載請自行聯系原作者