#!/bin/sh
#
#指定一個安裝路徑參數
if [ $# != 1 ] ; then
echo "USAGE: $0 [workpath]"
exit 1;
fi
axel -n 5 memcached-1.4.5.tar.gz
MEMCACHED_FILE=memcached-1.4.5
LIBEVENT_FILE=libevent-2.0.11-stable
#source download url
MEMCACHED_URL=http://memcached.googlecode.com/files/$MEMCACHED_FILE.tar.gz
LIBEVENT_URL=http://monkey.org/~provos/$LIBEVENT_FILE.tar.gz
#set memcached root path
MEMCACHED_HOME=$1/work/memcached
SOURCE=$MEMCACHED_HOME/source
#memcached source
MEMCACHED_SOURCE=$SOURCE/$MEMCACHED_FILE
#libevent source
LIBEVENT_SOURCE=$SOURCE/$LIBEVENT_FILE
LIBEVENT_INSTALL=/usr/local
if [ ! -d $SOURCE ] ; then
mkdir -p $SOURCE
fi
##change work dir
cd $SOURCE
echo "current path:" `pwd`
echo "download memcached source from $MEMCACHED_URL"
#axel -n 5 $MEMCACHED_URL
echo "download libevent source from $LIBEVENT_URL"
#axel -n 5 $LIBEVENT_URL
#tar -xf $MEMCACHED_FILE.tar.gz
#tar -xf $LIBEVENT_FILE.tar.gz
#安裝libevent
cd $LIBEVENT_SOURCE
#./configure --prefix=$LIBEVENT_INSTALL
#make && make install
#安裝memcached
cd $MEMCACHED_SOURCE
echo "current path:" `pwd`
#是否為64位
BIT64=""
if [ `getconf LONG_BIT` = '64' ] ; then
BIT64="--enable-64bit"
fi
./configure --prefix=$MEMCACHED_HOME --with-libevent=$LIBEVENT_INSTALL $BIT64
make && make install
注意 如果是64的為 必須啊把--enable-64bit加上
安裝完畢以後 要注意
1、啟動(安裝後位置:/usr/local/bin/memcached)
memcached -d -m 128 -l 192.168.0.50 -p 11211 -u root
即以root使用者,分配最大2GM記憶體啟動memcache
memcached -d -m 128 -l 192.168.0.50 -p 11212 -u root
在另外一個連接埠11212啟動另外一個memcache執行個體
官方網站: http://www.danga.com/memcached/
啟動一個Memcache的伺服器端:
/usr/local/bin/memcached -d -m 10 -u root -l 192.168.0.200 -p 12000 -c 256 -P /tmp/memcached.pid
-d選項是啟動一個守護進程,-m是分配給Memcache使用的記憶體數量,單位是MB,我這裡是10MB,-u是運行Memcache的使用者,我這裡是root,-l是監聽的伺服器IP地址,如果有多個地址的話,我這裡指定了伺服器的IP地址192.168.0.200,-p是設定Memcache監聽的連接埠,我這裡設定了 12000,最好是1024以上的連接埠,-c選項是最大啟動並執行並發串連數,預設是1024,我這裡設定了256,按照你伺服器的負載量來設定,-P是設定儲存Memcache的pid檔案,我這裡是儲存在 /tmp/memcached.pid,如果要結束Memcache進程,執行:
# kill `cat /tmp/memcached.pid`
也可以啟動多個守護進程,不過連接埠不能重複。