[root@localhost upload]# yum install gcc make cmake autoconf libtool
memcached 依賴於 libevent 庫,所以咱們須要先安裝 libevent.,ibevent和memcached的下載路徑html
http://sourceforge.net/projects/levent/?source=typ_redirectlinux
https://github.com/memcached/memcached/wiki/ReleaseNotes1425git
[root@localhost upload]# ls
libevent-2.0.22-stable libevent-2.0.22-stable.tar.gz memcached-1.4.25.tar.gz
[root@localhost upload]#
[root@localhost upload]#tar zxvf libevent-2.0.21-stable.tar.gz
[root@localhost upload]# cd libevent-2.0.22-stable
[root@localhost upload]#./configure --prefix=/usr/local/libevent
[root@localhost upload]#make && make install
[root@localhost upload]# tar zxvf memcached-1.4.25.tar.gz
[root@localhost upload]# cd memcached-1.4.25
[root@localhost upload]# ./configure --prefix=/usr/local/memcached
報錯:github
checking for libevent directory... configure: error: libevent is required. You can get it from http://www.monkey.org/~provos/libevent/windows
If it's already installed, specify its path using --with-libevent=/dir/服務器
提示須要libevent,須要指明libevent的安裝目錄數據結構
[root@localhost upload]#
./configure --prefix=/usr/local/memcached --with-libevent=/usr/local/libevent
[root@localhost memcached-1.4.25]# make && make install
沒什麼錯誤提示的話,編譯成功。併發
Memcached已經成功安裝到/usr/local/memcached/bin/memcached目錄下。tcp
[root@localhost memcached-1.4.25]# /usr/local/memcached/bin/memcached -m 64 -p 11211 -u nobody -vv
slab class 1: chunk size 80 perslab 13107
slab class 2: chunk size 104 perslab 10082
slab class 3: chunk size 136 perslab 7710
slab class 4: chunk size 176 perslab 5957
slab class 5: chunk size 224 perslab 4681
slab class 6: chunk size 280 perslab 3744
slab class 7: chunk size 352 perslab 2978
......
能夠看到memcached已經啓動,並把信息輸出到控制檯。memcached
各個參數解析:
-m 內存大小
-p 端口
-u 用戶
-vv 詳細信息
若是咱們想讓memcached做爲守護進程在後臺運行,只須要加-d選項
[root@localhost memcached-1.4.25]#/usr/local/memcached/bin/memcached -m 64 -p 11211 -u nobody -d
摘自網上的幾個重要參數
-p <num> 監聽的TCP端口(默認: 11211) -d 做爲守護進程來運行。 -u <username> 設定進程所屬用戶。(只有root用戶可使用這個參數) -m <num> 全部slab class可用內存的上限,以MB爲單位。(默認:64MB) (譯者注:也就是分配給該memcached實例的內存大小。) -c <num> 最大併發鏈接數。(默認:1024) -v 提示信息(在事件循環中打印錯誤/警告信息。) -vv 詳細信息(還打印客戶端命令/響應) -vvv 超詳細信息(還打印內部狀態的變化) -h 打印這個幫助信息並退出。 -f <factor> 不一樣slab class裏面的chunk大小的增加倍率(增加因子)。(默認:1.25) (譯者注:每一個slab class裏面有相同數量個slab page,每一個slab page裏面有chunk,且在當前slab class內的chunk大小固定。 而不一樣slab class裏的chunk大小不一致,具體差別就是根據這個參數的倍率在增加,直到分配的內存用盡。) -n <bytes> chunk的最小空間(默認:48) (譯者注:chunk數據結構自己須要消耗48個字節,因此一個chunk實際消耗的內存是n+48。)
下面咱們將介紹memcached的鏈接
memcached客戶端與服務器端的通訊比較簡單,使用的基於文本的協議,而不是二進制協議.
(http協議也是這樣), 所以咱們經過telnet便可與memcached做交互
[root@localhost libevent-2.0.22-stable]# yum install telnet*
這裏補充下 檢查本身系統是否已經安裝了telnet工具請移步我另一篇博客 http://www.cnblogs.com/shanheyongmu/p/6269414.html
[root@localhost libevent-2.0.22-stable]# telnet 192.168.1.112 11211
Trying 192.168.1.112...
Connected to 192.168.1.112.
Escape character is '^]'.
按下Ctrl + ] 打開回顯功能,Enter便可.以下:
[root@localhost libevent-2.0.22-stable]# telnet 192.168.1.112 11211
Trying 192.168.1.112...
Connected to 192.168.1.112.
Escape character is '^]'.
^]
telnet>
到了這一步基本上第二篇的命令輸入 界面就已經到達了 至於原文說的 connection以下的我並無顯示。
<34 server listening (udp)
<35 server listening (udp)
<36 new auto-negotiating client connection
若是從windows的控制檯鏈接到linux中的memcached,須要打開linux 的 11211端口的訪問權限,以下
[root@localhost libevent-2.0.22-stable]# /sbin/iptables -I INPUT -p tcp --dport 11211 -j ACCEPT
須要注意的是 windows cmd命令鏈接須要用外網 我看到不少文章都是填寫內網
還有就是 不少人到這一步覺得本身 能夠了就開始輸入命令 其實 ctrl+]了沒有enter回車
一樣,在windows的控制檯輸入telnet 112.74.178.181 11211便可鏈接。(公網IP)
正確界面以下
linux用的是內網