日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > linux >内容正文

linux

Linux下安装搭建Memcached集群环境

發布時間:2023/12/10 linux 31 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Linux下安装搭建Memcached集群环境 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

由于項目需要,需要搭建memcached集群環境,遂開始調研相關技術

網絡上有不少linux下安裝memcached的教程,對于我這個linux零基礎的來說,想立馬在linux下安裝memcached,似乎還是有點阻礙。參照了不少網絡教程,安裝過程中總是會出錯,特別是在安裝magent的時候,總是會報錯,而相關教程中,很少提及如何解決報錯問題,經過兩天的折騰,終于摸索并解決了所有的報錯問題,遂整理了一套“傻瓜”式的安裝過程,避免安裝過程中的報錯

----------------------------------------------------------------------------------------------------------------------------------------

什么是Memcached
Memcached 是一個高性能的分布式內存對象緩存系統,用于動態Web應用以減輕數據庫負載。它通過在內存中緩存數據和對象來減少讀取數據庫的次數,從而提供動態、數據庫驅動網站的速度。
Memcached基于一個存儲鍵/值對的HashMap,它并不提供冗余(復制其HashMap條目),當某個服務器停止運行或崩潰了,所有存放在服務器上的鍵/值對都將丟失。但目前Memcached的客戶端和代理程序可以提供多服務器的并聯方式,可以提供一定的處理能力。
Memcached與其他分布式緩存的區別
Memcached與其它常用的分布式緩存(例如EhCache、OSCache、JBoss Cache)最主要的區別在于Memcached采用集中式緩存方式(即一臺或多臺緩存服務器為所有應用系統提供緩存能力),自身不提供集群能力,不提供緩存復制功能;而其他分布式緩存系統采用分布式緩存方式,各個應用系統內部提供數據緩存的能力,多個緩存間采用組播或點對點的方式進行緩存同步。
在性能上來看,Memcached比其它分布式緩存系統低一半以上(未考慮大量數據在其它緩存系統進行復制的影響);但從管理方面來看,Memcached的緩存采用集中管理的模式,應用系統可以水平擴展,而其它分布式緩存在水平擴展的同時,必須同時調整緩存復制策略,一旦應用服務器節點大量擴展,對于緩存服務器間的數據復制將成幾何數增加。

----------------------------------------------------------------------------------------------------------------------------------------

環境:CentOS release 6.3

?

搭建memcached集群環境,先要安裝gcc?
# yum -y install gcc?

在root目錄下創建soft_hhf目錄
# cd /root/
# mkdir soft_hhf?

1.編譯安裝libevent
# cd /root/soft_hhf/
# wget http://cloud.github.com/downloads/libevent/libevent/libevent-2.0.21-stable.tar.gz?
# tar -xvf libevent-2.0.21-stable.tar.gz
# cd libevent-2.0.21-stable
# ./configure --prefix=/usr
# make&&make install
# cd ../?

2.編譯安裝Memcached
# cd /root/soft_hhf/
# wget http://memcached.googlecode.com/files/memcached-1.4.15.tar.gz
# tar -xvf memcached-1.4.15.tar.gz
# cd memcached-1.4.15/
# ./configure --with-libevent=/usr
# make&&make install
# cd ../

安裝完成后會把memcached放到 /usr/local/bin/memcached

?

3.編譯安裝magent-0.6到/usr/local/下(推薦安裝magent-0.5穩定版本,下面有說明? 日期:2013.01.04)
# cd /usr/local
# mkdir magent
# cd magent/
# wget http://memagent.googlecode.com/files/magent-0.6.tar.gz
# tar zxvf magent-0.6.tar.gz


# vi ketama.h?
在開頭加入
#ifndef SSIZE_MAX
# define SSIZE_MAX????? 32767
#endif

# vim Makefile?(magent-0.6版本)
LIBS = /usr/lib64/libevent.a /usr/lib64/libm.a 改為 LIBS = -lrt /usr/lib64/libevent.a /usr/lib64/libm.a?
CFLAGS = -Wall -g -O2 -I/usr/local/include $(M64) 改為 CFLAGS = -lrt -Wall -g -O2 -I/usr/local/include $(M64)

?

# vim Makefile?(magent-0.5版本)
CFLAGS = -Wall -O2 -g 改為 CFLAGS = -lrt -Wall -O2 -g

# cp /usr/lib/libevent.a /usr/lib64
# ln -s /usr/lib64/libm.so /usr/lib64/libm.a
# /sbin/ldconfig
# sed -i "s#LIBS = -levent#LIBS = -levent -lm#g" Makefile
# make
# cp magent /usr/bin/magent
# cd ../

?

測試memcached是否安裝成功:

1.啟動一個memcached進程

# memcached -m 1 -u root -d -l 192.168.1.151 -p 11211

2.查看是否啟動成功了

# ps aux|grep memcached

顯示兩行?root,則說明安裝成功了,如下所示:

root???? 11952? 0.0? 0.0 331112? 1104 ???????? Ssl? 15:09?? 0:00 memcached -m 1 -u root -d -l 192.168.1.151 -p 11211
root???? 11959? 0.0? 0.0 103240?? 796 pts/1??? S+?? 15:09?? 0:00 grep memcached

?

測試magent是否安裝成功:

1.啟動一個magent進程

# magent -u root -n 51200 -l 192.168.1.151 -p 12000 -s 192.168.1.151:11211

2.查看是否啟動成功了

# ps aux|grep magent

顯示兩行?root,則說明安裝成功了,如下所示:

root???? 11720? 0.0? 0.0? 10972?? 588 ???????? Ss?? 13:51?? 0:00 magent -u root -n 51200 -l 192.168.1.151 -p 12000 -s 192.168.1.151:11211 -s 192.168.1.151:11212 -b 192.168.1.151:11213
root???? 11974? 0.0? 0.0 103240?? 792 pts/1??? R+?? 15:12?? 0:00 grep magent

注:?之前的安裝過程中,我總是只顯示一行:root???? 11974? 0.0? 0.0 103240?? 792 pts/1??? R+?? 15:12?? 0:00 grep magent,但是執行magent命令又不報錯,可是查看magent進程,老是沒有,老是啟動不起來,其實還是magent沒有安裝成功,所以這邊必須要看到兩行,才能說明啟動成功。

?

好了,如果你順利安裝成功,那就恭喜你了,可以繼續深入學習memached的相關知識了

?

對于安裝過程中的報錯問題,我會在下一篇文章中整理出來,供自己以后查閱

?

接著就是進行測試學習了,首先確保telnet服務安裝了


查看telnet是否安裝??
查看telnet客戶端是否安裝:
# rpm -q telnet?
若無安裝,則執行:
# yum -y install telnet?
查看telnet服務端是否安裝:
# rpm -q telnet-server?
若無安裝,則執行:
# yum -y install telnet-server

?

注:剛測試發現magent-0.6雖是最新版本,但是還存在問題,不穩定,第二次訪問magent始終會堵塞在那里,只能set一個值。測試了magent-0.5是穩定版本,沒有出現只能set一個值的現象,遂推薦安裝magent-0.5版本

?

----------------------------------------------------------------------------------------------------------------------------------------

?

magent是一款開源的Memcached代理服務器軟件,其項目網址為:http://code.google.com/p/memagent/

magent is a simple but useful proxy program for memcached servers.

It features:
keeps connections to memcached servers
supports following memcached commands
get gets
delete
incr decr
add set replace prepend append
cas
event-driven by using libevent library
supports ketama algorithm
backup servers farm
unix domain socket
Usage:
? -h this message
? -u uid
? -g gid
? -p port, default is 11211. (0 to disable tcp support)
? -s ip:port, set memcached server ip and port
? -b ip:port, set backup memcached server ip and port
? -l ip, local bind ip address, default is 0.0.0.0
? -n number, set max connections, default is 4096
? -D do not go to background
? -k use ketama key allocation algorithm
? -f file, unix socket path to listen on. default is off
? -i number, max keep alive connections for one memcached server, default is 20
? -v verbose
Changelog:
2010/4/14: memcached agent 0.6

add connection keepalive handler
bug fix, more robust, more debug messages
Examples:
? magent -s 10.1.2.1 -s 10.1.2.2:11211 -b 10.1.2.3:14000 -v
Notes:
current magent's speed is about 80% of memcached's. finding way to speed it up(not good)
adding backup server does no harm to magent's performance. (good)
magent's cpu usage is less than memcached's and has very little memory usage. (good)

  • magent-0.5.tar.gz?(16 KB)

  • 下載次數: 23

  • magent-0.6.tar.gz?(16.9 KB)

  • 下載次數: 23

  • libevent-2.0.21-stable.tar.gz?(830.8 KB)

  • 下載次數: 9

  • memcached-1.4.15.tar.gz?(316.8 KB)

  • 下載次數: 14


轉載于:https://blog.51cto.com/wenzengliu/1591002

總結

以上是生活随笔為你收集整理的Linux下安装搭建Memcached集群环境的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。