程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 數據庫知識 >> SyBase數據庫 >> SyBase教程 >> memcached介紹和基本命令

memcached介紹和基本命令

編輯:SyBase教程

memcached介紹和基本命令


【介紹】:

Memcached 是一個高性能的分布式內存對象緩存系統,用於動態Web應用以減輕數據庫負載。它通過在內存中緩存數據和對象來減少讀取數據庫的次數,從而提供動態、數據 庫驅動網站的速度。Memcached基於一個存儲鍵/值對的hashmap。其守護進程(daemon )是用C寫的,但是客戶端可以用任何語言來編寫,並通過memcached協議與守護進程通信。

【特點】:

1. 協議簡單

2. 基於libevent的事件處理

3. 內置內存存儲方式

4. 采用不互相通信的分布式

【缺點】:

1. 重啟memcached服務器或者操作系統會使數據消失

2. 內存容量達到指定值之後,就會使用LRU算法自動刪除不使用或者很少使用的緩存。

Memcached啟動選項:

選項

描述

-d

以守護程序(daemon)方式運行memcached

-m

設置memcached可以使用內存的大小,單位為MB

-l

設置監聽的IP地址

-p

設置監聽的端口,默認為11211

-u

指定用戶,通常使用該選項指定為root用戶

 

啟動memcached:

Memcached –vvv

Memcached客戶端與服務器端的通信使用文本協議,可以使用telnet與memcached交互。

如:telnet127.0.0.1 11211(memcached默認端口是11211)

按下ctrl + ] 打開回顯功能。

 

\

\

 

Memcached命令:

1. 增:add往內存中增加一行新紀錄

語法:add key flag expire length

1)Key:值的名字

2)Flag:標志,是一個正整數

當往內存中存數組或者對象等時,就需要flag標志。序列化成字符串,取出時反序列化成相應的格式。

1. 字符串

2. 反轉成數組

3. 反序列化對象

 

3)Expire:有效期,N秒後結束。設為0不自動失效,但30天後失效,也有可能被新數據擠出去。

設置10秒後失效:

\

 

4)Length:緩存的長度,字節為單位

2. 刪

 

\

可以加上秒數,讓該key在N秒內不能使用,使網站上的頁面緩存代謝完畢。

Replace可對於已經存在的鍵進行更改。

Set命令有add和replace兩者的功能。沒有鍵可以增加,有可以更改。

Incr和decr命令:

\

 

把值當成32位無符號位來操作。

應用場景:

秒殺功能,秒殺主要在內存功能,速度很快。

 

Stats :統計命令

\

\

a. pid:memcached運行的進程號

b. uptime:運行時間

c. time:當前的時間戳

d. version:當前版本

e. total_items:歷史存儲的鍵數

f. curr_items:當前存儲的鍵數

g. cmd_get:總共向memcached服務器請求的次數

h. get_hits:響應成功的次數

i. get_misses:失敗的次數

通過這三個可以求出緩存命中率。命中率越高越優秀。

Flush_all:清除緩存對象(慎用);

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved