memcached是乙個自由開源的,高效能,分布式記憶體物件快取系統。
memcached是以livejournal旗下danga interactive公司的brad fitzpatric為首開發的一款軟體。現在已成為mixi、hatena、facebook、vox、livejournal等眾多服務中提高web應用擴充套件性的重要因素。
memcached是一種基於記憶體的key-value儲存,用來儲存小塊的任意資料(字串、物件)。這些資料可以是資料庫呼叫、api呼叫或者是頁面渲染的結果
安裝memcache使用telnet遠端的
yum -y install memcached telnet
開啟memcache服務
方式一:
systemctl start memcached
方式二:
memcached -u memcached -p 11211 -m 64 -c 1024 &
登入
11211是埠號
telnet 127.0.0.1 11211
trying 127.0.0.1...
connected to 127.0.0.1.
escape character is '^]'.
顯示這個是登陸成功
資料統計stats
引數名
作用pid
memcache伺服器的程序id
uptime
伺服器已經執行的秒數
time
伺服器當前的unix時間戳
version
memcache版本
pointer_size
當前作業系統指標大小,反映了作業系統的位數,64意味著memcache伺服器是64位的
rusage_user
程序的累計使用者時間
rusage_system
程序的累計系統時間
curr_connections
當前開啟著的連線數
total_connections
當伺服器啟動以後曾經開啟過的連線數
connection_structures
伺服器分配的連線構造數
cmd_get
get命令總請求次數
cmd_set
set命令總請求次數
cmd_flush
flush_all命令總請求次數
get_hits
總命中次數,重要,快取最重要的引數就是快取命中率,以get_hits / (get_hits + get_misses)表示,比如這個快取命中率就是99.2%
get_misses
總未命中次數
auth_cmds
認證命令的處理次數
auth_errors
認證失敗的處理次數
bytes_read
總讀取的位元組數
bytes_written
總傳送的位元組數
limit_maxbytes
分配給memcache的記憶體大小(單位為位元組)
accepting_conns
是否已經達到連線的最大值,1表示達到,0表示未達到
listen_disabled_num
統計當前伺服器連線數曾經達到最大連線的次數,這個次數應該為0或者接近於0,如果這個數字不斷增長, 就要小心我們的服務了
threads
當前memcache匯流排程數,由於memcache的執行緒是基於事件驅動機制的,因此不會乙個執行緒對應乙個使用者請求
bytes
當前伺服器儲存的items總位元組數
current_items
當前伺服器儲存的items總數量
total_items
自伺服器啟動以後儲存的items總數量
stats items
stats slabs
引數名
作用chunk_size
當前slab每個chunk的大小,單位為位元組
chunks_per_page
每個page可以存放的chunk數目,由於每個page固定為1m即10241024位元組,所以這個值就是(10241024/chunk_size)
total_pages
分配給當前slab的page總數
total_chunks
當前slab最多能夠存放的chunk數,這個值是total_pages*chunks_per_page
used_chunks
已經被分配給儲存物件的chunks數目
free_chunks
曾經被使用過但是因為過期而被**的chunk數
free_chunks_end
新分配但還沒有被使用的chunk數,這個值不為0則說明當前slab從來沒有出現過容量不夠的時候
mem_requested
當前slab中被請求用來儲存資料的記憶體空間位元組總數,(total_chunks*chunk_size)-mem_requested表示有多少內存在當前slab中是被閒置的,這包括未用的slab+使用的slab中浪費的記憶體
get_hits
當前slab中命中的get請求數
cmd_set
當前slab中接收的所有set命令請求數
delete_hits
當前slab中命中的delete請求數
incr_hits
當前slab中命中的incr請求數
decr_hits
當前slab中命中的decr請求數
cas_hits
當前slab中命中的cas請求數
cas_badval
當前slab中命中但是更新失敗的cas請求數
stats sizes
add新增鍵值對,name鍵的名字,數字零是備註,數字九是過期時間,數字三是申請的位元組,noreply是不顯示輸出
add name 0 9 3 noreply //新增
tomset name 0 9 3 //set是新增也是替換
tomreplace name 0 900 3 //replace替換已存在鍵的值
tomjerry
prepend name 0 900 5 //prepend向已存在的鍵前面追加值
jack
gets name //gets獲取鍵的令牌以及值
get name //get獲取值
cas name 0 900 5 15 //cas檢查並執行操作
redis
delete name //delete刪除存在的鍵,清空資料
incr age 5 //incr物件自增(只對數值管用)
decr age 3 //decr物件自減(只對數值管用)
flush_all 10 //清空資料庫 數字10是定義多長時間清空(10是10秒)
memcache快取伺服器01
configure make make install2 啟動 memcache d m 2048 u root l 127.0.0.1 p 11211 m 設定記憶體大小 p 設定埠 3 停止 pkill memcached檢視memcache服務狀態 查埠 netstat tunpl grep ...
memcache伺服器監控
最新的memcache pecl中,新增了乙個memcache.php,這個php檔案可以用來方便的檢視memcache的狀況,介面上與apc自帶的apc.php風格一致。1 設定使用者名稱和密碼 define admin username memcache admin username defin...
memcache 伺服器安裝
在linux 編譯,需要gcc,make,cmake,autoconf,libtool 等工具,需提前安裝好。memcached的安裝包括 1 服務端的安裝 2 客戶端的安裝 一 伺服器端安裝 方法一 memcached 依賴於libevent 庫,因此我們需要先安裝libevent.假設將原始碼放...