【中間件從青銅到王者】第一篇: memcache初相識
大家好,我是互聯網老辛,這是我參與更文挑戰的第1天;
今天主要來分享關于memcache的介紹和部署,以及簡單的使用,每天一篇,讓你系統學習中間件
memcache的介紹
memcahce 被稱為分布式的高速緩存系統,在一些大型的,需要頻繁被訪問的數據庫網站上,可以有效提升訪問速度。
目前應用場景有兩類:
作為數據庫的前段緩存:
Memcached(內存是易失性存儲), redis, memcachedb, HANA
作為session服務器
工作流程
在有緩存的情況下,請求經過web服務器到達memcache,查看,如果有緩存直接返回結果,不會去訪問數據庫。
面試題: memcache與redis的區別
從存儲方式上來說: memcache把數據全部存在內存當中,斷電后會掛掉,數據不能超過內存大小。
redis的優勢是有部分數據保存在硬盤上,這樣能保證數據的持久化,支持數據的持久化。
從數據支持類型上來看,redis在數據支持上要比memcache要多。
但memcache最大的優勢是支持的平臺比較多,redis目前只能在linux上用。
安裝memcache
安裝libevent
上傳軟件包: libevent-2.1.12-stable.tar.gz
解壓
[root@itlaoxin164 ~]# tar zxvf libevent-2.1.12-stable.tar.gz [root@itlaoxin164 ~]# cd libevent-2.1.12-stable [root@itlaoxin164 libevent-2.1.12-stable]# ./configure --prefix=/usr/local/libevent --disable-openssl #檢查系統編譯環境
1
2
3
安裝
[root@itlaoxin164 libevent-2.1.12-stable]# make -j 4 [root@itlaoxin164 libevent-2.1.12-stable]# make install #安裝
1
2
3
查看已經安裝的文件:
[root@itlaoxin164 libevent-2.1.12-stable]# ls /usr/local/libevent/
bin include lib
安裝memcache
[root@itlaoxin164 ~]# tar zxvf memcached-1.6.9.tar.gz [root@itlaoxin164 ~]# cd memcached-1.6.9 [root@itlaoxin164 memcached-1.6.9]# ./configure --prefix=/usr/local/memcached --with-libevent=/usr/local/libevent/ [root@itlaoxin164 memcached-1.6.9]# make -j 4 [root@itlaoxin164 memcached-1.6.9]# make install [root@itlaoxin164 memcached-1.6.9]# echo $? 0
1
2
3
4
5
6
7
啟動memcached
[root@itlaoxin164 memcached-1.6.9]# /usr/local/memcached/bin/memcached -u root -p 11211 -l 192.168.1.164 -P /var/run/memcached.pid -m 128m -c 2048 -d [root@itlaoxin164 memcached-1.6.9]# echo $? 0
1
2
3
4
參數的介紹
查看端口:
[root@itlaoxin164 ~]# netstat -antup | grep 11211 tcp 0 0 192.168.1.164:11211 0.0.0.0:* LISTEN 9801/memcached udp 0 0 192.168.1.164:11211 0.0.0.0:* 9801/memcached
1
2
3
測試,連接memecached 讀寫數據
#使用telnet連接memcache,進行測試 語法:telnet IP 11211 [root@itlaoxin164 ~]# rpm -ivh /mnt/Packages/telnet-0.17-47.el6.x86_64.rpm warning: /mnt/Packages/telnet-0.17-47.el6.x86_64.rpm: Header V3 RSA/SHA256 Signature, key ID fd431d51: NOKEY Preparing... ########################################### [100%] 1:telnet ########################################### [100%]
1
2
3
4
5
6
7
-m 分配內存
-p 監聽端口
-d 守護進程
-c 連接數
-u 運行用戶
-l 監聽ip
實戰:使用telnet連接memcache,進行測試
[root@itlaoxin164 ~]# telnet 192.168.1.164 11211 Trying 192.168.1.164... Connected to 192.168.1.164. Escape character is '^]'. set name 4 300 6 mkinge STORED get name VALUE name 4 6 mkinge END quit Connection closed by foreign host.
1
2
3
4
5
6
7
8
9
10
11
12
13
set name 4 300 6
#往memcached 緩存中存儲一個鍵值,標志4 ,緩存時間300秒,字符串長度是6個字節
總結
預告:明天我們來分享使用memcache 為MySQL加速
Memcached Redis 數據庫
版權聲明:本文內容由網絡用戶投稿,版權歸原作者所有,本站不擁有其著作權,亦不承擔相應法律責任。如果您發現本站中有涉嫌抄襲或描述失實的內容,請聯系我們jiasou666@gmail.com 處理,核實后本網站將在24小時內刪除侵權內容。
版權聲明:本文內容由網絡用戶投稿,版權歸原作者所有,本站不擁有其著作權,亦不承擔相應法律責任。如果您發現本站中有涉嫌抄襲或描述失實的內容,請聯系我們jiasou666@gmail.com 處理,核實后本網站將在24小時內刪除侵權內容。