簡單介紹:
memcache緩存資料庫:減少資料庫壓力。高性能的分布式記憶體緩存伺服器,用于動态web應用,減少i/o,提高web通路速度以減輕資料庫負載,以提高動态web應用的速度、提高可擴充性。利用 memcached 處理實時資料讀寫;mysql是影響性能的最大瓶頸,可以用一台mysql主庫(隻寫)+多台mysql輔庫(隻讀)的主輔庫叢集來解決。另外,通路計數等實時性很強的東西用memcache做緩存。基于c#語言寫的調用libevent庫事件來實作。
1. hash表結構:key、value存取方式
2. 工作方式:memcached是以守護程式方式運作一個或多個伺服器中,随時會接受用戶端(如:php)連接配接或操作。
linux安裝配置
一、memcached安裝
1
2
3
4
5
6
<code>wget http:</code><code>//memcached</code><code>.googlecode.com</code><code>/files/memcached-1</code><code>.4.10.</code><code>tar</code><code>.gz</code>
<code>yum </code><code>install</code> <code>libevent libevent-devel </code><code>#安裝memcached元件</code>
<code>tar</code> <code>zxvf memcached-1.4.10.</code><code>tar</code><code>.gz</code>
<code>cd</code> <code>memcached-1.4.10</code>
<code>.</code><code>/configure</code>
<code>make</code> <code>&& </code><code>make</code> <code>install</code>
檢視是否成功安裝memcached
<code>ls</code> <code>-al </code><code>/usr/local/bin/mem</code><code>*</code>
<code>-rwxr-xr-x 1 root root 137986 11?? 12 17:39 </code><code>/usr/local/bin/memcached</code>
<code>-rwxr-xr-x 1 root root 140179 11?? 12 17:39 </code><code>/usr/local/bin/memcached-debug</code>
二、安裝memcache的php擴充
<code>wget http:</code><code>//pecl</code><code>.php.net</code><code>/get/memcache-3</code><code>.0.6.tgz</code>
<code>tar</code> <code>zvxf memcache-3.0.6.tgz</code>
<code>cd</code> <code>memcache-3.0.6</code>
<code>/usr/local/php/bin/phpize</code>
<code>.</code><code>/configure</code> <code>–with-php-config=</code><code>/usr/local/php/bin/php-config</code>
<code>make</code> <code>&& </code><code>make</code> <code>installmemcache子產品</code>
使php加載memcache子產品
<code>vi</code> <code>/etc/php</code><code>.ini</code>
<code>extension=memcache.so</code>
三、啟動memcache的伺服器端:
<code>/usr/local/bin/memcached</code> <code>-d -m 128 -l 192.168.0.10 -p 11211</code>
-d選項是啟動一個守護程序,
-m是配置設定給memcache使用的記憶體數量,機關是mb
-u是運作memcache的使用者
-l是監聽的伺服器ip位址
-p是設定memcache監聽的端口,最好是1024以上的端口
-c選項是最大運作的并發連接配接數,預設是1024,根據你伺服器的負載量來設定
-p是設定儲存memcache的pid檔案,我這裡是儲存在 /tmp/memcached.pid,
結束memcache程序,執行:killall memcached
windows安裝配置:
下載下傳memcached:http://ishare.iask.sina.com.cn/f/36094281.html
下載下傳5.3php_memcache.dll:http://code.google.com/p/sirius/downloads/detail?name=php_memcache.dll&can=2&q=
一、memcached和memcache安裝:
1、 下載下傳memcache的windows穩定版,解壓放某個盤下面,比如在c:\memcached
2、 cmd頁面下輸入 ‘c:\memcached\memcached.exe -d install’ #安裝memcached到系統服務
3、安裝php_memcache.dll,下載下傳對應的php版本
4、加載memcache用戶端,在c:\winnt\php.ini 加入一行 ‘extension=php_memcache.dll’
5、啟動memcached:
c:\memcached\memcached.exe -d –m 128 –l 127.0.0.1 –p 11211 start #預設端口:11211
二、memcache環境測試:
1.重新啟動apache,然後檢視一下phpinfo,如果有memcache,那麼就說明安裝成功!
2.也可以運作下面的php檔案,如果有輸出this is a test!,就表示環境搭建成功。
7
<code>< ?php</code>
<code>$mem = new memcache;</code>
<code>$mem->connect(“127.0.0.1″, 11211);</code>
<code>$mem-></code><code>set</code><code>(‘key’, ‘this is a </code><code>test</code><code>!’, 0, 60);</code>
<code>$val = $mem->get(‘key’);</code>
<code>echo</code> <code>$val;</code>
<code>?></code>
其他測試:telnet 192.168.0.202 11211或phpinfo()
常用指令:status、version、flush_all、quit、get、add、set