memcached介紹,安裝與基本使用

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

memcached是一套分佈式的快取系統,當初是Danga Interactive爲了LiveJournal所發展的,但目前被許多軟件(如MediaWiki)所使用。這是一套開放源代碼軟件,以BSD license授權釋出。

memcached 是以LiveJournal 旗下Danga Interactive 公司的Brad Fitzpatric 爲首開發的一款軟件。現在已成爲mixi、hatena、Facebook、Vox、LiveJournal等衆多服務中提高Web應用擴展性的重要因素。許多Web應用都將數據保存到RDBMS中,應用服務器從中讀取數據並在瀏覽器中顯示。但隨着數據量的增大、訪問的集中,就會出現RDBMS的負擔加重、數據庫響應惡化、網站顯示延遲等重大影響。

這時就該memcached大顯身手了。memcached是高性能的分佈式內存緩存服務器。一般的使用目的是,通過緩存數據庫查詢結果,減少數據庫訪問次數,以提高動態Web應用的速度、提高可擴展性。

Memcached 的守護進程(daemon )是用C寫的,但是客戶端可以用任何語言來編寫,並通過memcached協議與守護進程通信。但是它並不提供冗餘(例如,複製其hashmap條目);當某個服務器S停止運行或崩潰了,所有存放在S上的鍵/值對都將丟失。

以下是 memcached 在 Windows 系統下的 x86/x64 版本的安裝方法。

命令提示符下運行

安裝:

memcached -d install

memcached -d start

memcached -m 256m -d start

net start "Memcached Server"

卸載:

memcached -d stop

memcached -d remove

sc delete "Memcached Server"

memcached的基本設置:

-p 監聽的端口

-l 連接的IP地址, 默認是本機

-d start 啓動memcached服務

-d restart 重起memcached服務

-d stop|shutdown 關閉正在運行的memcached服務

-d install 安裝memcached服務

-d uninstall 卸載memcached服務

-u 以的身份運行 (僅在以root運行的時候有效)

-m 最大內存使用,單位MB。默認64MB

-M 內存耗盡時返回錯誤,而不是刪除項

-c 最大同時連接數,默認是1024

-f 塊大小增長因子,默認是1.25

-n 最小分配空間,key+value+flags默認是48

-h 顯示幫助

add name[key] 0[標誌位] 60[time] 5[放入多大數據]

set name 0 60 5有的話更新

replace替換存在的key

append

prepend追加修改

incr key 增加數

decr key 減少數

delete key

flush_all全部清空

stats命令使用次數

memcached的基本概念


memcached是一個高效的,支持分佈式的內存對象緩存系統,可以支持把各種數據到其管理的內存中[數組,對象,基本數據類型]

使用memcached的好處:

訪問速度:數據庫<文件<內存


安裝步驟:

1.下載memcached軟件

2.將memcached軟件拷貝到某個目錄,最好放在開發環境目錄下,便於管理

3.安裝 memcached -d install

4.卸載使用 memcached -d uninstall

5.啓動memcached服務

(1)直接通過界面啓動該服務

(2)在控制檯啓動memcached -d start

6.查看memcached服務是否啓動成功。默認端口11211


memcached的基本命令(安裝、卸載、啓動、配置相關)

-p 監聽的端口

-l 連接的IP地址,默認是本機

-d start 啓動memcached服務

-d restart 重啓memcached服務

-d stop|shutdown 關閉正在運行的memcached服務

-d install 安裝memcached服務

-d uninstall 卸載memcached服務

-u 以的身份運行(僅在以root運行的時候有效)

-m 最大的內存使用,單位MB.默認是64MB,最大好像是2G

-M 內存耗盡時返回錯誤,而不是刪除項

-c 最大同時連接數,默認是1024

-f 塊大小增長因子,默認是1.25

-n 最小分配空間,key+value+flags默認是48

-h顯示幫助

特別說明:如果你的網站,需要memcached的內存大於64M應當這樣啓動

memcached -m 256m -d start

如果大於256m,就基於LRU(Least Recently Used)的算法自動刪除不使用的緩存

如果你希望換一個端口:memcached -d -m30 -l 127.0.0.1 -p 9000 -d start[linux使用]

80 apche//IIS

21 ftp

23 telnet

3306 mysql

1521 oracle

1433 sql server

8080 tomcat


使用方法(CRUD)

telnet   -------->memecached緩存系統

程序(1.通過memcache擴展。2.通過memcached擴展3.通過socket訪問)     -------->memcached緩存系統

1.連接到memcached :telnet 127.0.0.1 11211

2.add name 0 60 5 [說明 add是指令名 name是key的名字(是以key/value形式存儲) 0是標誌 60表示數據存放60秒 5表示放入多大數據]

3.get name[獲取name的值]

4.set name 0 60 5[如果name存在則更新,不存在則添加]

5.刪除: delete key

6.replace替換,如果key不存在則會報錯

7.append 追加

8.prepend 在前面添加 

eg:add name 0 60 5

   append name 0 60 3

   prepend name 0 60 5

9.incr增加:incr key 2[針對數字]

10.decr減少:decr key 3

11.flush_all全部清空

12.flush_all 900 :有效期900秒之內的數據清空

13.stats:顯示命令操作次數



memcached的基本命令(當memcached啓動後,用於對memcached的管理數據和本身運行狀態相關的命令)


linux下設置防火牆

iptables -a input -p 協議 -s 可以訪問ip -dport 端口 -j ACCEPT


小結

小網站,pv值不大,不需要使用

變化頻繁,查詢頻繁,但是不一定寫入數據庫,適合使用

變化頻繁,但數據需要入庫,且數據很重要,不適合使用

變化不頻繁,查詢頻繁,不管入不入庫,都比較適合使用



發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章