分布式memcached服务器代理magent安装配置(CentOS6.6)

Memcache服务器安装配置(192.168.1.247~249)
首先:配置本地YUM源,挂载光驱,安装编译器

CentOS6.6有两个ISO文件,在虚拟机上安装两个光驱,并连接到两个ISO文件

1、修改yum源配置

cd /etc/yum.repos.d/
mv CentOS-Base.repo CentOS-Base.repo.bak
vi CentOS-Media.repo

修改替换为如下内容:

baseurl=file:///media/cdrom1/
        file:///media/cdrom2/
gpgcheck=0
enabled=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-6

创建文件夹:

mkdir /media/cdrom1
mkdir /media/cdrom2

挂载光驱:

mount /dev/cdrom /media/cdrom1
mount /dev/cdrom1 /media/cdrom2

然后再   yum install gcc gcc-c++

1、编译安装libevent:


wget http://monkey.org/~provos/libevent-1.4.9-stable.tar.gz
tar zxvf libevent-1.4.9-stable.tar.gz
cd libevent-1.4.9-stable/
mkdir /usr/local/libevent
./configure --prefix=/usr/local/libevent
make && make install


2、编译安装Memcached:


wget http://danga.com/memcached/dist/memcached-1.2.6.tar.gz
tar zxvf memcached-1.2.6.tar.gz
cd memcached-1.2.6/
mkdir /usr/local/memcached
./configure --prefix=/usr/local/memcached  --with-libevent=/usr/local/libevent
make && make install


3、启动memcached服务器:


/usr/local/memcached/bin/memcached -m 100 -u root  -d  -l 127.0.0.1  -p 11211



memcached参数详解:
-p       TCP port number to listen on (default: 11211)
-U       UDP port number to listen on (default: 0, off)
-s      unix socket path to listen on (disables network support)
-a      access mask for unix socket, in octal (default 0700)
-l   interface to listen on, default is INDRR_ANY
-d            run as a daemon
-r            maximize core file limit
-u  assume identity of  (only when run as root)
-m       max memory to use for items in megabytes, default is 64 MB
-M            return error on memory exhausted (rather than removing items)
-c       max simultaneous connections, default is 1024
-k            lock down all paged memory.  Note that there is a
             limit on how much memory you may lock.  Trying to
             allocate more than that would fail, so be sure you
             set the limit correctly for the user you started
             the daemon with (not for -u  user;
             under sh this is done with ‘ulimit -S -l NUM_KB’).
-v            verbose (print errors/warnings while in event loop)
-vv           very verbose (also print client commands/reponses)
-h            print this help and exit
-i            print memcached and libevent license
-b            run a managed instanced (mnemonic: buckets)
-P      save PID in , only used with -d option
-f    chunk size growth factor, default 1.25
-n     minimum space allocated for key+value+flags, default 48

memcache代理服务器magent安装配置(192.168.1.246)
1、 magent是一款开源的Memcached代理服务器软件,其项目网址为:http://code.google.com/p/memagent/ 目前最新版本为0.6
2、 安装,先配置本地源,挂载光驱,安装编译器

Yum install gcc gcc-c++ libgnomeui-devel

3、 编译安装libevent:

wget http://monkey.org/~provos/libevent-1.4.9-stable.tar.gz   //下载安装libevent
tar zxvf libevent-1.4.9-stable.tar.gz
cd libevent-1.4.9-stable/
mkdir /usr/local/libevent
./configure
make && make install

4、 安装magent

mkdir /usr/local/magent  
cp ./magent-0.6.tar.gz  /usr/local/magent   
cd /usr/local/magent  
tar xzvf ./magent-0.6.tar.gz    
/sbin/ldconfig    
sed -i "s/LIBS = -levent/LIBS = -levent -lm/g" Makefile     
make

magent.c:729: 错误:‘SSIZE_MAX’未声明(在此函数内第一次使用)
magent.c:729: 错误:(即使在一个函数内多次出现,每个未声明的标识符在其
magent.c:729: 错误:所在的函数内也只报告一次。)
make: *** [magent.o] 错误 1

解决方案:
#在ketama.h开头加入(过滤掉特殊字符)

#ifndef SSIZE_MAX
#define SSIZE_MAX      32767
#endif

继续make

cp magent /usr/bin/

启动memagent:

/usr/bin/magent -u root -n 4096 -l 192.168.1.246 -p 12000 -s 192.168.1.247:11211 -s 192.168.1.248:11211  -b 192.168.1.249:11211

magent命令详解:
-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

PHP开启扩展php_memcache.Dll注意版本的问题

//phpinfo();  //查看扩展是否开启
$mem = new Memcache();
//直接连接代理服务器
$mem->connect(‘192.168.1.246‘,12000) or die(‘connect fail!<br>‘);
 
echo "connect success!<br>";
 
for($i=0;$i<10;$i++){
    if($mem->set(‘key‘.$i , ‘data‘.$i , 0 , 3600)){
            echo "set ok!";            
    }else{
            echo "set false!";
    }
}

报错提示:
Notice: Memcache::set(): Server 192.168.1.246 (tcp 12000) failed with: Failed reading line from stream (0)
原因是:代理magent没有连接到memcached服务器

打开 vi /etc/sysconfig/iptables  添加memcache的端口,在重启
解决方案:
启动memcached的时候,不能使用 –l  127.0.0.1或者-l  localhost,要设置当前IP

/usr/local/memcached/bin/memcached -m 100 -u root  -d  -l 192.168.1.247  -p 11211

使用memadmin监控memcached服务器的存储状态:
备份服务器bak_249请求次数10次,s1_247五次,s2_248五次,memadmin统计信息如下图:

备份服务器249:

S1_247:

S2_248:

时间: 2024-10-17 13:30:22

分布式memcached服务器代理magent安装配置(CentOS6.6)的相关文章

Git服务器代理上网安装出现问题的几个解决办法。

1.gem安装出现下面错误 [email protected]:/home/git/gitlab# sudo gem install bundler --no-ri --no-rdoc ERROR:  Could not find a valid gem 'bundler' (>= 0), here is why: Unable to download data from https://rubygems.org/ - Errno::ETIMEDOUT: Connection timed out

阿里云服务器Linux CentOS安装配置(四)yum安装tomcat

阿里云服务器Linux CentOS安装配置(四)yum安装tomcat 1.yum -y install tomcat  执行命令后,会帮你把jdk也安装好 2.tomcat安装目录:/var/lib/tomcat/ 3.tomcat配置目录:/etc/tomcat/ 4.启动tomcat:service tomcat start 5.访问下:curl 127.0.0.1:8080(安装目录里是个空文件夹,所以访问时,没有任何内容返回,这是正常的) 远程访问地址:http://ip:8080(

NFS服务器原理和安装配置详解附案例演练

NFS服务器原理和安装配置详解附案例演练 1.什么是NFS服务器 NFS就是Network File System的缩写,它最大的功能就是可以通过网络,让不同的机器.不同的操作系统可以共享彼此的文件. NFS服务器可以让PC将网络中的NFS服务器共享的目录挂载到本地端的文件系统中,而在本地端的系统中来看,那个远程主机的目录就好像是自己的一个磁盘分区一样,在使用上相当便利: 2.NFS挂载原理 NFS服务器的挂载结构图: 如上图示: 当我们在NFS服务器设置好一个共享目录/home/public后

阿里云服务器Linux CentOS安装配置(七)域名解析

阿里云服务器Linux CentOS安装配置(七)域名解析 1.购买域名 登录阿里云,左侧菜单点击[域名],然后[域名注册],完成域名购买.(一般首年45元) 2.添加域名解析 在域名列表里点击你的域名,进入域名控制台 如上图,点击[域名解析] 然后点击[添加解析],添加下面两项(有提示,很简单的) 3.ping测试 ping www.域名 ping 域名(没有www) 可能会两几分钟延迟,ping不通的话等两分钟再试试 4.下一章,使用nginx为云服务器上不同端口的服务配置不同的子域名

阿里云服务器Linux CentOS安装配置(五)jetty配置、部署

阿里云服务器Linux CentOS安装配置(五)jetty配置.部署 1.官网下载jetty:wget http://repo1.maven.org/maven2/org/eclipse/jetty/jetty-distribution/9.2.17.v20160517/jetty-distribution-9.2.17.v20160517.zip 我用上面的命令下载速度太慢了,于是先下载到本地,再传到服务器的 2.解压:unzip jetty-distribution-9.2.17.v201

memcached缓存技术之安装配置php 并在CMD下用telnet操作数据

第一步下载安装memcached.exe文件 (1)将下载的文件解压到指定文件 (2)打开CMD控制台输入cd\回到根目录 (3)将制定的文件路径输入,然后用memcached.exe -d install安装 (4)用memcached.exe –p 端口号 或memcached.exe –m 200MB –d start 指令启动. (5)用netstat –anb指令查看11211端口是否被memcached.exe占用,占用则安装成功. 第二步配置php_memcahce.dll使得ph

阿里云服务器Linux CentOS安装配置(一/九)购买阿里云服务器

阿里云服务器Linux CentOS安装配置(一/九)购买阿里云服务器 我在阿里云购买的服务器配置 CPU:1核 内存:2G 系统盘:40G 公共镜像:CentOS 6.5 64位 公网带宽:1Mbps 价格:108元/月 系统运行参考 1个svn 1个mysql 1个tomcat部署了一个Java Web项目跑14802端口 1个jetty部署了一个Java Web项目跑14808端口 1个resin部署了两个Java Web项目跑了8080.14805两个端口 1个nginx 上面的服务运行

阿里云服务器Linux CentOS安装配置(八)nginx安装、配置、域名绑定

阿里云服务器Linux CentOS安装配置(八)nginx安装.配置.域名绑定 1.安装nginx yum -y install nginx 2.启动nginx service nginx start 3.访问(nginx默认是80端口) curl 127.0.0.1 4.域名子绑定 编辑文件/etc/nginx/conf.d/default.conf,在底部加入下面代码,完成前几章所述4个端口的子域名绑定 server{ listen 80; server_name tomcat.bingz

阿里云服务器centos下安装配置svn服务器

阿里云服务器centos下安装配置svn服务器 1.安装svn服务器端 yum install subversion      从镜像下载安装svn服务器端中间会提示是否ok,输入y,确认安装成功提示:.....complete!依次执行如下命令:cd /usr/local/              //进入目录,准备创建svn目录 mkdir svnRepo                   //创建一个svn目录 chmod -R 777 svnRepo            //修改目